ATLANTA -- Two rookies came through in key situations to help Atlanta's Tim Hudson beat Arizona's Josh Collmenter.
Backed by a key defensive play by first baseman Freddie Freeman and two ninth-inning strikeouts by closer Craig Kimbrel with a runner on third, Hudson and the Braves beat Collmenter and the Diamondbacks 1-0 on Sunday to complete a three-game sweep.
Hudson combined with Jonny Venters and Kimbrel on a five-hit shutout. Alex Gonzalez homered for the game's only run.
Hudson (13-7) allowed only three hits with three walks and seven strikeouts in seven innings.
"He was outstanding," said Braves manager Fredi Gonzalez. "Wow. What a performance. He got out of a couple of jams and gave us the opportunity to win."
Kimbrel escaped trouble in the ninth to earn his 39th save.
Kimbrel walked Chris Young with one out in the ninth. Young advanced to third on Miguel Montero's single up the middle. Kimbrel hit 100 mph on the Turner Field radar gun before striking out Paul Goldschmidt on a 99 mph fastball. He struck out Sean Burroughs to end the game.
"I felt confident the whole time," Kimbrel said.
The Braves strengthened their lead in the NL wild-card race by winning six of seven from the NL West's top two teams -- San Francisco and Arizona -- to complete a 7-3 homestand.
"It was huge," said Braves catcher Brian McCann. "We had the two best teams from the West come to town and we took six of seven."
The Diamondbacks have lost five straight to match their longest skid of the season.
The Braves have won four straight and six of seven and began the day 8 games ahead of the Giants in the NL wild-card race.
Kimbrel leads the majors in saves and is one behind the rookie record of 40 saves by Neftali Feliz of Texas in 2010.
By striking out the side in the ninth, Kimbrel has 100 for the season, the most among relievers in the majors. Kimbrel is considered a leading candidate for NL rookie of the year.
Freeman, hitting .293 with 17 homers and consistent strong defense at first base, is another top rookie. He delivered a strong catch and throw in the sixth inning to preserve the 1-0 lead.
Arizona's Kelly Johnson led off the sixth with a triple to right. One out later, Chris Young hit a popup that Freeman chased into foul territory and caught while running with his back to the plate. Johnson took off from third base as Freeman turned and threw to the plate.
Catcher Brian McCann moved to his right to catch Freeman's throw and then made a lunging tag before Johnson slid over the plate.
"He's such an athlete, I knew he was going to make that play," McCann said. "I just caught it and dove for the plate."
Fredi Gonzalez said McCann deserved credit "for sticking his nose in there and cutting Kelly off."
Arizona manager Kirk Gibson said Johnson had to try to score when the Diamondbacks had so few chances.
"We forced them to make a play," Gibson said. "I liked what Kelly did. ... We were going to go down swinging."
Arizona began the day 2 1/2 games ahead of San Francisco in the NL West.
Collmenter (7-8) gave up only four hits and one run in seven innings but saw his streak of road starts without a win extended to nine.
The Diamondbacks have scored only nine runs in their last six games, including three runs in the three losses to Atlanta.
"We tried to make as much happen as we could," Gibson said.
"We each got five hits. They got a home run. They got seven home runs in three games. We hit none. That's uncharacteristic of us."
Collmenter loaded the bases with one out in the sixth but pitched out of the jam with fly balls from Dan Uggla and Freeman.
The Braves couldn't extend the lead in the eighth when Michael Bourn hit a one-out double to right and advanced to third on Justin Upton's fielding error.
Bourn took off from third on an attempted squeeze play, but Martin Prado missed the bunt attempt and Bourn was caught in a rundown.
"That's why they call it a suicide squeeze," said Fredi Gonzalez said.
The Diamondbacks also lost five straight from May 8-13. Both streaks came on road trips.