ATLANTA -- The Arizona Diamondbacks had their comeback mojo working.
The Braves had Freddie Freeman, who has been as productive as ever since missing 44 games with a fractured wrist.
Freeman homered and had the decisive hit off Archie Bradley in Atlanta's two-run eighth inning to lead the Braves past the Diamondbacks 4-3 on Friday night.
Freeman has three homers in seven games since coming off the disabled list on July 4.
The biggest hit for the left-handed hitting Freeman was the line drive to left field against the shift with runners on second and third in the eighth.
"If there's a guy in scoring position and there's a hole over there, I'm going for it every time," Freeman said.
Diamondbacks manager Torey Lovullo said he considered walking Freeman.
"We believe in Archie and Freeman just beat us," Lovullo said. "We thought about it, but we thought Archie was the guy to get us out of the mess."
The Diamondbacks lead the majors with 29 comeback wins and were in position for No. 30 when Chris Owings scored the tiebreaking run on a wild pitch in the eighth.
The Braves answered quickly against Bradley (3-2). Ender Inciarte beat second baseman Brandon Drury's throw to first for an infield single and raced to third on Brandon Phillips' double into the right-field corner.
Freeman's single to left easily scored Inciarte. Phillips tripped when rounding third base but then scored when the throw from the outfield went to second base. Freeman was credited with one RBI. There was no error on the play.
Arizona's Paul Goldschmidt hit his 21st homer.
Freeman has a hit in each of his seven games since coming off the DL and is hitting .352.
"He's special and we all know that," Braves manager Brian Snitker said. "He just keeps doing it and has all year."
Rex Brothers (1-0) recorded the last out in the eighth. Jim Johnson pitched the ninth for his 20th save in 27 chances. He had defensive help when Inciarte caught up to A.J. Pollock's drive at the center-field wall to start the inning.
The Diamondbacks have lost six of seven and nine of 12. Taijuan Walker allowed two runs in six innings.
The Braves scored a run off Walker in the first when Inciarte led off with a double to left field and scored on a two-out single by Matt Kemp.
The Diamondbacks tied it with four straight singles off R.A. Dickey in the sixth. Daniel Descalso's grounder up the middle drove in Owings.
With one out and the bases loaded, Walker, who had thrown 85 pitches, was left in the game. He hit into an inning-ending double play.
With one out and the bases loaded in the sixth, Walker, who had thrown 85 pitches, was left in the game. He hit into an inning-ending double play.
CHASING A BONE
Dickey allowed a run over six innings and has a 1.09 ERA in his last five starts. He endured an embarrassing play in the first when Goldschmidt's grounder bounced off his glove and dribbled toward third base. Dickey took after the ball -- on all fours.
"I missed it and crawled after it," Dickey said. "I was like a dog chasing a bone. It was horrible."
Diamondbacks RHP J.J. Hoover (right shoulder inflammation) allowed one run and two hits with two strikeouts in one inning for Class A Kane County on Thursday. … RHP Rubby De La Rosa (right shoulder inflammation) is scheduled to pitch one inning in a rookie league game on Saturday.
Diamondbacks: LHP Patrick Corbin (6-9, 4.71) will try to extend his streak of 25 2/3 scoreless innings in his career against the Braves. The streak covers five games, including three starts.
Braves: RHP Mike Foltynewicz (7-5, 3.77) is 0-1 with a 6.17 ERA in four career starts against Arizona.