MILWAUKEE -- Able to wave the bat free and easy, Ryan Braun got right into the swing.
The All-Star slugger had missed nine of the previous 12 games with an intercostal strain -- he described the pain as muscles tightening on both sides of his rib cage that affected his ability to breathe.
"I felt good out there tonight," Braun said. "I am able to swing without any pain."
The NL wild-card leaders moved to 20 games over .500 for the first time since finishing the 1992 season in the AL East. Milwaukee has beaten Pittsburgh 11 straight times at Miller Park since May 2007.
Braun was almost hit by Pirates pitcher Tom Gorzelanny in the fourth. Braun launched the next pitch for a long foul into the upper deck in left field, then sent the next offering into the upper deck in left for his 32nd home run.
"Anytime you get a pitch at 93 or 94 mph near your face, it will focus you a little more and make sure you're ready for the next pitch," he said. "I know he didn't do it on purpose, but it certainly increased my attention level."
Gorzelanny said the pitch Braun hit for a home run was a slider.
"I needed to throw that in the dirt, " he said. "I just left it up a little. Being the hitter that he is, it's never really going to work out in my favor."
Jeff Suppan (9-7) pitched seven innings and earned his fourth straight victory. He left after giving up a leadoff double to pinch-hitter Chris Gomez in the eighth, and Brian Shouse finished the inning. Salomon Torres pitched the ninth for his 25th save in 30 chances.
Brewers manager Ned Yost said Suppan has been pitching well ever since the righty spent two weeks on the disabled list in July with irritation in his pitching elbow.
"He is making the pitches when he has to," Yost said. "He is changing speeds, limiting his mistakes and getting ball hit on the ground."
Suppan helped himself by starting two double plays and picking Nyler Morgan off second base in the first inning.
"Double plays are a pitcher's best friend," Suppan said. "I think I've had a lot more movement on my pitches and I've been able to stay out of big innings."
Gorzelanny (6-8) was recalled from Triple-A before the game but again struggled at Miller Park, giving up six runs and seven hits in 4 2/3 innings. He was sent to the minors on July 4 after a rough start in Milwaukee in which he allowed eight runs and 11 hits in 4 2/3 innings.
Pirates manager John Russell said Gorzelanny was better in his first start since returning from the minors.
"It wasn't a terrible start," Russell said. "He got ahead and just couldn't quite finish them off. He attacked the zone and was pretty efficient, but the two-strike hits and the two-out runs got him."
- The Pirates recalled closer Matt Capps from his rehab assignment with Double-A Altoona. He had been sidelined since July 2 with bursitis in his right shoulder.
- Pirates C Ryan Doumit did not start Saturday after leaving Friday night's game with symptoms of dehydration.
- Suppan singled in the third for his third hit of the season.