Three second half goals secured a big win for Bristol City as Rovers' unbeaten run came to an end at Ashton Gate.
Charlie Mulgrew got Rovers off to a dream start as his corner sailed past everyone and into the net before Josh Brownhill equalised with a free kick late into the half.
The hosts were clinical after the break, and goals from Marley Watkins, Famara Diedhiou and Marlon Pack made the score flatter the home side, who took their chances when they came their way.
Rovers probably deserved more for their efforts, particularly with the chances falling their way in the first half.
Tony Mowbray made two changes, with Adam Armstrong and Danny Graham returning to the XI in place of Joe Rothwell and Joe Nuttall, who were both available from the bench.
Former Bristol City man Derrick Williams was also named in the squad having missed the last few matches. Williams appeared 131 times in all competitions during his three-year spell at Ashton Gate and was named as a substitute.
New signings Harrison Reed and Ben Brereton were both included in the squad, with the pair, like Williams, taking their place on the bench.
Hosts Bristol City named an unchanged side to the one that defeated Swansea City in their last Championship outing.
A lively opening saw David Raya produce a good save to beat away Jack Hunt's stinging drive just eight minutes into the encounter at Ashton Gate.
Moments later and Raya was called upon again, this time to brilliantly deny the in-form Andreas Weimann from scoring his sixth goal of the season after Niclas Eliasson picked the striker out.
But on 13 minutes Rovers had the lead as Mulgrew scored direct from a corner, catching out Finnish goalkeeper Niki Maenpaa at his near post with the visitors' first chance of the game.
Rovers were growing in confidence and midway through the half Mowbray's men hit the upright as Kasey Palmer read Amari'i Bell's dink into the box but clattered the post from close range after beating Lloyd Kelly to the ball.
The next opportunity came to Elliott Bennett, who thrashed a shot goalwards but saw Tomas Kalas in the way of his effort from the edge of the box.
Just as Rovers were looking comfortable, Ryan Nyambe was adjudged to have held Matty Taylor on the edge of the box and Josh Brownhill stepped up to curl into the top corner and equalise for the hosts.
Rovers could and should have responded just two minutes later as Graham played in Armstrong, who capitalised on a slip by Adam Webster but couldn't beat Maenpaa who was out smartly to block.
The home side started the second half as they ended the first and Raya did really well to stop Taylor making it 2-1 just six minutes into the second 45.
But moments later the Robins did get that goal as the ball fell kindly for Watkins in the box and the Wales international lashed home to put the hosts ahead.
Rovers fans got their first glimpse of Brereton from the resulting kick-off as the 19-year-old made his debut after replacing Graham.
Substitute Diedhiou marked his first outing of the season with a goal on 73 minutes as the Senegal striker twisted Darragh Lenihan before deceiving Raya with an excellent finish at the near post.
It was a killer blow for Rovers, who at that stage looked to be controlling things and continuing the search for an equaliser.
It meant a mountain to climb but substitute Joe Rothwell almost pulled one back with 12 minutes remaining, curling wide from range after using his pace to drive inside.
But the Robins did kill things off soon after as captain Pack looped a header beyond Raya after Niclas Eliasson's cross was flicked on by Kalas with eight minutes of the game remaining.
The dangerous Eliasson caused problems all day and nearly got a goal himself when he forced Raya into a smart stop soon after before Pack again kept the Rovers goalkeeper busy with a deft header.
Brereton nearly landed a debut goal in the dying embers of the goal as his adventurous flick beat Maenpaa but Kalas was on hand to hook off the line in the final opportunity of a frustrating game for Rovers.
Bristol City: Maenpaa, Webster, Brownhill, Taylor (Diedhiou, 66), Weimann (Paterson, 84), Watkins (O'Dowda, 66), Kelly, Eliasson, Pack (c), Kalas, Hunt.
Substitutes: Pisano, Da Silva, Walsh, O'Leary.
Goal: Brownhill, 37, Watkins, 55, Diedhiou 73, Pack, 82
Rovers: Raya, Nyambe (Rothwell, 65), Lenihan, Mulgrew (c), Bell, Smallwood, Evans, Palmer (Nuttall, 72), Bennett, Armstrong, Graham (Brereton, 56).
Substitutes: Leutwiler, Williams, Reed, Conway.
Goal: Mulgrew, 13
Referee: David Webb.
Attendance: 19,769 (1,058 away)