Half time 1-0
Pep Guardiola was happy to give several players a run-out in Catalonia, and they have found it hard going against the newly-promoted La Liga side.
Girona face Atletico Madrid in their season opener this weekend, and they have taken no prisoners.
That has meant City have not controlled the midfield in the way their first XI tends to do, with Phil Foden and Brahim Diaz looking a bit naïve and lightweight at times, while Yaya Toure is effective but playing in slow motion.
Bernardo Silva has started, but he looks short of match fitness.
Raheem Sterling began well and tested the Girona keeper, while Leroy Sane curled a free kick just wide – but the German has been a bit of a liability when asked to defend.
Tosin Adarabioyo and Danilo have not worked it out on the City right either, and that is where the goal originated, Girona flanking the City back three and crossing to the far post where Sane’s slip allowed Portu time to finish.