History repeated itself as Luke Ayling struck a late winner to see off struggling Crawley Town in a real scrap in West Sussex.
Just as he was in the reverse fixture at Ashton Gate back in December, Ayling was the hero with a dramatic goal in the closing stages to finally see off the relegation-threatened Red Devils.
Aden Flint’s fourth goal in his last six games set City on their way early in the second half after a first period best described as a difficult watch.
But Anthony Wordsworth dispatched a fine equaliser on the half-volley totally against the run of play to haul a physical home team level 12 minutes later.
That looked like the way things would stay as City struggled to create their usual number of chances on a bobbly pitch, only for Ayling to meet Luke Freeman’s 84th minute corner with a thumping near-post header.
Steve Cotterill named an unchanged 18 following the midweek win at Leyton Orient, with no alterations to the starting XI or among the substitutes.
The visitors experienced one or two early difficulties in dealing with the directness of a Crawley side not afraid to send long balls bouncing in behind the City back three.
From one of those, top scorer Izale McLeod was left with only Flint standing between himself and the goal, only for the Sky Bet League One Player of the Month to be stopped in his tracks by his fellow February nominee.
A spot of pinball broke out in the City box soon after, as Mathias Pogba’s initial knockdown eventually fell the way of Anthony Wordsworth.
Marlon Pack got an important foot in as Wordsworth wandered into the area, before inadvertently deflecting a Derrick Williams clearance back towards his own goal.
It was an untidy opening period, but City threatened to take the lead in none too spectacular fashion themselves on 12 minutes, only for strike pairing Aaron Wilbraham and Kieran Agard both to be flagged offside in being denied by Lewis Price after Pack’s initial free kick was cleared and then helped back into the mix.
It was a game missing any sort of rhythm, with City finding it almost impossible to display their obvious superiority with the ball.
McLeod again escaped momentarily but skewed his shot well wide before Pogba connected cleanly but struck his volley against the body of Williams.
City were grateful to hear the sound of the referee’s whistle when most of the ground thought they had fallen behind on the half-hour mark.
Richard Wood met Lee Fowler’s free kick with a thumping header that flew past Frank Fielding only for the defender to have his celebrations halted by another offside call.
In truth it was a first half which could not end quickly enough – both as a spectacle and in terms of giving the City players a refresher course in how to keep playing their own game in the face of rather one-dimensional hosts.
Unsurprisingly, after a quick chat with the boss, the visitors looked suitably recharged straight from the restart, as some early pressure was rewarded with a succession of corners.
When one set-piece was cleared into touch, Flint stayed forward and Korey Smith took the resulting throw-in quickly to Freeman, who was allowed plenty of time to deliver a cross from the right-hand side.
The ensuing ball in proved to be right on the money for Flint, as the tallest player inside the penalty area rose highest to score with a downward header from no more than eight yards just in front of over 1,000 travelling fans.
It was a goal that paved the way for City’s most sustained spell of control in the match – yet a spell that culminated in an unlikely equaliser.
Having hardly seen the ball since falling behind, Crawley drew level on the hour from a throw-in of their own.
It was almost symbolic that, rather than take it short, the home team dispensed with City’s approach and launched it straight into the box.
When the ball dropped 15 yards from goal, it produced a moment of rare quality as Wordsworth connected sweetly with a rising half-volley that glanced the underside of the crossbar on its way into the net.
It was a moment that punctured City’s increasing momentum without exactly sparking waves of Crawley pressure, as the game retreated back into its first-half shell.
Freeman found space down the left channel to deliver a low cross only gathered at the second attempt by the sprawling Price with Agard preparing to pounce.
But City continued to press, dominating territory and possession if not chances, before another Freeman assist was given a timely nod of approval by Ayling six minutes from time.