Photos and VideosMore Photos and Videos
Freddie Freeman #5 of the Atlanta Braves is forced out at first during a game against the Miami Marlins at Marlins Park on July 24, 2012 in Miami, Florida.
Tim Hudson pitched seven innings, Jason Heyward drove in two runs, and the Atlanta Braves beat the Miami Marlins 4-3 on Tuesday night.
Martin Prado and Freddie Freeman both drove in a run for the Braves, who snapped a three-game losing streak.
Jose Reyes homered and drove in two runs for the Marlins as he extended his hitting streak to 12 games.
After issuing the home run to Reyes in the second inning, Hudson (9-4) retired 16 straight before he was relieved by Eric O'Flaherty.
Hudson allowed five hits and three runs as he threw 54 of 80 pitches for strikes. He improved to 13-4 in 24 starts against the Marlins.
Heyward broke a 3-all tie in the seventh inning with an RBI single off Wade LeBlanc (1-1) that scored Prado, who tripled to lead off the inning.
O'Flaherty pitched a scoreless eight and Craig Kimbrel pitched the ninth for his 29th save in 30 chances.
Heyward's sacrifice fly scored the Braves' first run.
Hanley Ramirez tied the game with an RBI single as Justin Ruggiano was thrown out on a close play at home by Michael Bourn to end the inning.
Reyes' two-run homer down the right-field line gave the Marlins a 3-1 lead. It was his sixth of the season.
Mark Buehrle issued a bases-loaded walk to Freeman to pull the Braves within 3-2. Prado's sacrifice fly tied it.
Buehrle walked a season-high four batters. He allowed three runs — two earned — and five hits in five innings.