A fee of £20,000 up front, and another £30,000 in the future has been agreed between the two clubs.
Roberts still has to agree personal terms, and pass a medical before the move goes ahead. It was at this stage that the Darius Henderson deal fell through a few weeks ago.
So far this season for Bristol City he has scored one goal against Stockport after making 8 starts, and coming on off the bench twice. He played against Swindon when Bristol City lost their local derby 2-1 back in August.