Joachim Löw's experimental German lineup held their own to claim a 0-0 draw against an experienced Italian side in Milan. Kevin Volland had a goal disallowed but Italy spurned the best of the game's chances.
Italy 0 – 0 Germany
The German 11, featuring debutant Yannick Gerhardt at left back and rare starts for Julian Weigl, Sebastian Rudy and Leon Goretzka in midfield, struggled a little for cohesion in the opening exchanges.
Despite that, they almost took the lead after 12 minutes, when Ilkay Gündogan's precise through ball sent Goretzka through. But the Schalke man was beaten to the ball by Gianluigi Buffon, making his 167th appearance in goal for the Azzurri.
At the other end of the pitch, and the other end of the international experience scale, Bernd Leno - winning his third cap in place of Manuel Neuer, who sat out this international break due to sickness, was called into action by Daniele Rugani's long-range strike and was grateful that Eder failed to connect with Ciro Immobile's low cross.
Immobile only had himself to blame for wasting the best chance of the half in the 25th minute when the former Borussia Dortmund striker beat Benedikt Höwedes to a chipped pass. Leno was out quickly, but not quickly enough. Immobile had time to strike it cleanly but instead shanked it high and wide.
Germany created a clear chance of their own just five minutes later. Lovely combination play between Gündogan and Thomas Müller saw the Manchester City midfielder face to face with Buffon but he could only volley tamely into the 38-year-old's arms.
New man makes mark on familiar turf
This was the World Cup winning keeper's last meaningful action of the night, he was replaced at halftime by Gianluigi Donnarumma. The 17-year-old AC Milan stopper, seen as Buffon's long-term replacement for Italy, came on for his second cap to the delight of the San Siro crowd.
Donnarumma looked comfortable on the ground where he plays his club football but was picking the ball out of his net just after the hour mark, when substitute Kevin Volland tapped home a shot from close range. But the teenager's clean sheet - and the deadlock - remained intact when the linesman correctly raised his flag, Volland was marginally offside.
As the substitutions continued, the game lost some of its first-half flow but Italy looked the more dangerous. The hosts cut through Germany's midfield in a rapid 70th minute counter attack but Federico Bernardeschi's tame left-footed strike was easily stopped by Leno. Immobile was next to go close, curling the ball past Leno but also past the far post.
The Leverkusen man was beaten in the 82nd minute when Andrea Belotti took aim from inside the box but his shot cannoned back off the post. Germany were increasingly being pinned back as the clock ticked down, Güngogan's dubious, and perhaps desperate, penalty claim six minutes from time was their only threat in the last quarter of the game.
Germany held on but, unlike when the side's last met, at Euro 2016, a draw would have to do for both.
Höwedes admits changes meant lost momentum
After the match, German defender Benedikt Höwedes admitted that the constant flow of substitutions hindered his side.
"It was great that everyone got a chance in the second half but maybe the changes made us lose control of the game," he said.
Captain Thomas Müller agreed that his side lost their way a little in the second period but believes the future is bright.
"It was a game of two halves. We were good in the first half but Italy put us under pressure in the second," he said.
"We've seen tonight that we have a lot of talent in Germany. I was very proud of the lads. We can be satisfied with that."