Jason Heyward hit a three-run home run and Michael Bourn had two RBI to lead the Atlanta Braves past the San Francisco Giants, 7-3, in the third contest of a four-game series at AT&T Park.
Martin Prado and Reed Johnson also knocked in runs for Atlanta, which snapped a two-game slide.
Mike Minor (7-10) allowed three runs on four hits with no walks and five strikeouts over 6 2/3 innings to snap a personal three-start losing streak.
"I'm pleased with the way Minor pitched today. Better than pleased really, ecstatic, and pleased with the offense," Braves manager Fredi Gonzalez said.
Gregor Blanco drove in a pair of runs for the Giants, who had their five-game win streak come to an end.
Madison Bumgarner (14-8) surrendered four runs on seven hits and four walks through 6 1/3 innings to take the loss.
"I felt pretty good the first couple innings, and then the wheels kind of fell off for me," Bumgarner said. "I was able to battle through it and get some outs, but you can't pitch that way, not feeling confident with your stuff and not being able to put the ball where you want to."
Atlanta struck first in the third inning when Heyward followed a pair of walks by Minor and Prado with a blast over the right-field wall.
The Giants cut into their deficit in the fifth inning after Hunter Pence was hit by a pitch to start the frame and moved to third on Joaquin Arias' double to left field.
Brandon Belt followed with a grounder to second to plate Pence and move Arias to third, but Francisco Peguero struck out and Bumgarner flied out to left field to strand Arias and keep it a 3-1 game.
The Braves got that run back in the seventh inning when Minor hit a one-out double off the wall in right field and came home on Bourn's single up the middle, knocking Bumgarner out of the game.
Minor was removed in favor of Chad Durbin after a Buster Posey single and Belt's double placed runners on second and third with two outs in the bottom of the seventh, and Blanco greeted the reliever with a pinch-hit, two-run double to right field to bring San Francisco within 4-3.
But Ryan Theriot flied out to left to leave the tying run on second and Atlanta regained its cushion in the eighth inning after loading the bases with one out off Clay Hensley on a David Ross double, Dan Uggla's walk and a base hit by Paul Janish.
Jeremy Affeldt came on next and induced a grounder to first by pinch-hitter Tyler Pastornicky that Belt threw home for the force before Bourn and Prado each worked a walk to bring home Uggla and Janish, respectively, for a 6-3 lead.
Freddie Freeman hit a leadoff single and rounded the bases on Johnson's one- out double down the first-base line in the ninth inning to account for the final margin.
Atlanta placed pitcher Ben Sheets on the 15-day disabled list and purchased the contract of pitcher Miguel Batista from Triple-A Gwinnett earlier Saturday ... Minor improved to 2-0 in three career starts against the Giants ... Bumgarner fell to 8-2 in 12 home starts this season ... Giants center fielder Angel Pagan went 0-for-4 to snap an eight-game hit streak.