The 27-year-old has signed for the Gas on a free transfer after leaving Pompey by mutual consent on transfer deadline day.
Bennett signed a new three-year deal with Pompey in the summer, after playing a key role in last season's League Two title success.
However, he found game time this term under Kenny Jackett hard to come by, starting just one match since November 18.
In total, he made 22 appearances for the Blues this season, but was an unused substitute in six of Pompey’s past seven matches in all competitions.
'Is proving one hell of a signing.... A real livewire' - Portsmouth match ratings from 2-0 win at Cheltenham
Portsmouth boss Danny Cowley hails squad depth as tactical masterclass at Cheltenham pays off
Portsmouth loan strategy revealed following duo's arrival from Ipswich and Blackpool respectively
RECAP as Colby Bishop steal show as Portsmouth edge Cheltenham at sun-soaked Whaddon Road
‘For the sake of 90 minutes football, it’s not worth a player being off work for a year or ending up in a wheelchair’ – Hampshire grassroots football clubs postpone matches due to the heatwave
Bennett, who arrived from Doncaster Rovers in May 2005, said Rovers boss Darrell Clarke was a key reason behind his decision to move to the Memorial Ground.
Speaking to bristolrovers.co.uk, he said: 'I'm glad to be here and to get the deal over the line.
'Darrell made it clear to me from the start that he really wanted me here and as a player you always want to be somewhere that you are wanted and that was a massive factor in me joining.'
Clarke said: 'I am pleased to bring Kyle to the club as he’s a player I have watched on a number of occasions over the years.
'He is another experienced player who has well over 200 first-class appearances to his name and is a wide player who will add to our attacking options.'