Wilson left Sky Bet Championship club Sheffield United by mutual consent, having spent the first half of the season on loan in Sky Bet League One with Walsall.
Welshman Wilson has been capped by his nation at full internationals, U21 and U19 ages. He made his international debut in 2013 away at Belgium.
The 28-year-old started his career with Bristol City, and spent time on loan with Brentford and Cheltenham during eight-year spell at Ashton Gate, making over 30 appearances in the process.
After leaving the Robins, he joined Oldham Athletic where he made 100 appearances, before signing for Sheffield United on a two-year deal at the beginning of the 2016-17 season.
Wilson will add vast league experience to the City back line with just under 200 EFL appearances to his name, and will be available for selection in tomorrow’s game against Notts County.