— Manchester City FC (@MCFC) August 11, 2014
The 23-year-old has been heavily linked with a move to the reigning Premier League champions this summer and had done his medical at the Etihad last week.
The highly-rated centre back, was subject to a bid from the City during the January transfer window, but it was turned down by the Portuguese club as they needed their defender until the end of the season.
The French international will wear the no.20 shirt at the Etihad. He is become the City’s sixth summer signing ahead of the season, following the arrival of Bacary Sagna, Willy Caballero, Bruno Zuculini, Frank Lampard and Fernando.
Mangala joined Porto in August 2011 from Belgian club Standard Liege, who has made 92 appearances and won the Portuguese title twice in a row during 2011/12 and 2012/13.