SAN FRANCISCO (AP) — Brandon Belt's solo home run in the seventh inning broke up a scoreless pitching duel and the San Francisco Giants won their fourth straight, beating the Atlanta Braves 7-0 on Thursday night.

Chris Heston (5-3) allowed four hits over 7 1-3 innings to win his third straight decision and give the Giants 12 wins in their past 14 games. He also doubled, his first career extra base hit.

Hunter Pence added a two-run triple and Joe Panik a two-run double in a six-run eighth inning against Brandon Cunniff to break the game open. Brandon Crawford had two hits and drove in a run and Nori Aoki added two hits.

Pence became the first right-handed hitter to hit safely against Cunniff, ending his streak of 30 straight to begin his career.

Shelby Miller (5-2), who came within one out of a no-hitter in his last road start, took the loss despite allowing one run and five hits over seven innings. He did not walk a batter and struck out one.

The Braves lost their third of four games and fell to 1-6 in their last seven games against the Giants.

Miller, who allowed his first home run since April 30, a span of five games, lowered his ERA to 1.48, matching Zack Greinke of the Dodgers for the NL lead.

Both starting pitchers were efficient throughout. Miller retired 16 of the first 17 batters he faced. Heston and Belt were the only Giants to venture beyond first base against him.

Heston, meanwhile, retired 16 of the first 18 Braves he faced. He walked one and struck out six. He had allowed 11 runs in his previous 7 2-3 innings.

Jace Peterson singled with one out in the sixth. After Cameron Maybin struck out, Freddie Freeman singled to send Peterson to third before Heston got Nick Markakis to ground out, ending the Braves' best chance against him.

Heston gave up a hit to open the eighth but got pinch-hitter Pedro Ciriaco on a forceout. Jeremy Affledt and Sergio Romo followed, each getting an out in the eighth.

Buster Posey of the Giants went 0 for 4, ending his streak of reaching base safely at a career-high 27 games.

TRAINER'S ROOM:

Braves: OF Joey Terdoslavich (left wrist sprain) went 5 for 13 (.385) in three games with Class-A Rome. He is continuing his rehab with Carolina.

Giants: RHP Jake Peavy (back strain) got kicked around in his second rehab start, allowing six runs and nine hits in 4 2/3 innings Wednesday night with Triple-A Sacramento. Giants manager Bruce Bochy said he expects Peavy to make at least two more rehab starts.

UP NEXT:

Braves: RHP Mike Foltynewicz (3-1, 4.25) starts Friday night's game against the Giants. He's coming off his best performance yet, a three-hitter over 7 2-3 innings. He allowed one run, walked one and struck out seven in a 2-1 victory over Miami. The former first-round draft pick is in his first year as a starter. He was used out of the bullpen after being called up last August.

Giants: RHP Tim Hudson (2-4, 5.04) makes his first start against the Braves since leaving the team for free agency. He gave up a season-high eight runs and six hits in 3 2-3 innings in his last start.