SAN FRANCISCO (AP) — Derek Dietrich got Cincinnati a lead, and David Hernandez helped the bullpen make sure it held up.
Dietrich singled in the tiebreaking run in the seventh inning, Hernandez struck out five in two perfect relief innings and the Cincinnati Reds beat the San Francisco Giants 5-4 Saturday night.
Eugenio Suarez and Yasiel Puig homered, and Dietrich hit a two-out flair against Reyes Moronta (1-3) that left fielder Mac Williamson couldn't grab despite a sliding effort, allowing Suarez to score from third to snap a 4-4 tie. Suarez doubled leading off the inning and took third on a passed ball.
Hernandez was among four Reds relievers who combined for five shutout innings of one-hit ball.
"We asked a lot of our bullpen tonight, and they delivered," Reds manager David Bell said.
Amir Garrett (2-1) pitched a scoreless sixth for the win. Raisel Iglesias threw a scoreless ninth for his eighth save in 10 tries as the Reds won their third straight game.
"Our preparation going into each series is something I've never seen before as far as just scouting and putting together a game plan," Hernandez said. "That's something that's just completely different from what we did last year, and so far it's working."
Reds starter Anthony DeSclafani gave up four runs in four innings.
Steven Duggar had three hits, including a two-run triple, for the Giants, who have lost three straight and five of seven.
Reds catcher Tucker Barnhart threw out Duggar trying to steal third with one out and two on in the seventh. The call was upheld after a challenge by Giants manager Bruce Bochy.
"I'm shocked it wasn't overturned," Bochy said. "Watching it on the board it's hard to tell, but I talked to our guys and no question he was safe. I don't know how they didn't overturn it.
"These are tough deals, they come from New York, but the word I got is no question he was safe."
Giants starter Jeff Samardzija had another rocky first inning against Cincinnati a week after allowing three homers on three straight pitches. This time, Puig hit a two-run shot during a three-run first inning.
Samardzija followed with three scoreless innings before being pinch-hit for in the fourth.
Samardzija struck out five, walked three and allowed five hits in a start that typified his season. The 34-year-old righty has given up 11 runs (all earned) in the first inning through eight starts. He has a 1.36 ERA in 33 innings after that.
Evan Longoria hit a solo shot off DeSclafani in the first. San Francisco has been outscored 40-3 in the first inning this season.
Longoria's sixth homer also broke the Reds' streak of 18 consecutive scoreless innings going back to Thursday's 3-0 win against Oakland.
The Giants took a 4-3 lead in the fourth, when Duggar's two-run triple highlighted a three-run inning.
Suarez homered leading off the fifth against Trevor Gott, his 12th.
Giants left-hander Derek Holland, who gave up seven runs in 2 2/3 in Thursday's 12-11 loss to Colorado in his first outing since coming off the injured list (left index finger bone bruise), criticized the team's front office after a subsequent demotion to the bullpen, alleging he went on the injured list with a "fake injury."
Holland made his remarks after Saturday's game.
"To be honest I have no idea what they're doing," Holland said. "I don't mean that by Bochy and them, it's more the front office. They keep changing a lot of things, I did a fake injury. I'm not happy about that. But at the end of the day I'm going to do whatever they ask me to do."
The Giants claimed OF Aaron Altherr off waivers from the Philadelphia Phillies. He's expected to join the team Tuesday and will be its fourth outfielder, manager Bruce Bochy said. The Giants designated right-handed pitcher Andrew Moore for assignment in a corresponding move.
Reds: CF Nick Senzel and LF Jesse Winkler collided trying to field Duggar's one-out single in the sixth. Both players appeared to be shaken up but stayed in the game.
Giants: 1B Brandon Belt, who left Friday's game in the ninth inning with right knee inflammation, has been cleared to play after having an MRI taken Saturday. Belt, whose status remains day-to-day, pinch-hit in the ninth and struck out swinging for the game's last out. ... C Buster Posey (concussion list) played catch on the field Saturday. ... C Kratz (left hamstring strain) was reinstated from the IL. ... LHP Dereck Rodriguez was optioned to Triple-A Sacramento.
Reds: RHP Tyler Mahle (0-5, 3.69 ERA) has a 1.62 ERA in 11 innings over his last two starts.
Giants: LHP Madison Bumgarner (2-4, 3.99) is 3-5 with a 4.21 ERA in nine career starts against Cincinnati.