The Twins tied it at 1 in the fifth, as A.J. Burnett became the first Pirates starter to pitch that deep. Brandon Boggs led off with a double down the right-field line and worked his way home after Brian Dinkelman's grounder and Josmil Pinto's sacrifice fly.
Burnett departed after issuing a two-out walk to Escobar. Jared Hughes gave up consecutive singles to Olmedo and Darin Mastroianni to let in the tie-breaking run.
Ivan De Jesus had knotted it at 2 when he led off the fifth with a homer off Casey Fien. That was the Pirates' first home run in 70 innings since March 1.
The Bucs had scored an unearned run in the first after center fielder Joe Benson was charged with an error for bumping into Mastroianni as the right fielder was about to catch Travis Snider's fly ball. Alex Presley, who had led off with an infield single, eventually scored on Clint Robinson's one-out sacrifice fly.
Up next: The Twins play the Pirates for a second straight day with right-hander Liam Hendriks set to take the mound in a 1:05 p.m. ET start at Hammond Stadium on Sunday. Hendriks, who is competing for a spot in the rotation, has a 3.38 ERA in three Grapefruit League appearances. Left-hander Jonathan Sanchez is scheduled to start for Pittsburgh.
Tom Singer is a reporter for MLB.com and writes an MLBlog Change for a Nickel. He can also be found on Twitter @Tom_Singer. This story was not subject to the approval of Major League Baseball or its clubs.