SAN FRANCISCO -- Matt Moore pitched into the eighth inning to give San Francisco's weary bullpen a much-needed rest, Brandon Belt homered for the second time in three days and the Giants held on to beat the Reds, 3-1, on Saturday at AT&T Park in just 2 hours, 33 minutes.
One day after outlasting the Reds in 17 innings (and 5 hours, 28 minutes) while using all seven relievers, the Giants got a big outing from Moore (2-4), who earned a win for the first time since April 10. The left-hander pitched out of multiple jams early, gave up one run over 7 1/3 innings, walked three and struck out seven while throwing a season-high 119 pitches.
"It was really needed for him to get us deep in the game," Giants manager Bruce Bochy said. "He really gave us a little more than I thought, to be honest. He pitched his way into some jams, but in traffic, he found a way to make pitches."
San Francisco needed it on a day when Cincinnati right-hander Lisalverto Bonilla was almost as sharp in his first start since late in the 2014 season. Bonilla allowed three runs on six hits in eight innings and struck out five. He also collected his first Major League hit with a single in the fourth.
The Reds left 11 runners on base, and they outhit the Giants eight to six.
"Neither team came up with the hit that really could have created the separation," Reds manager Bryan Price said. "I think we had a bigger opportunity to blow that game open, more so than they did. We had more baserunners, more opportunity, we just weren't able to deliver the big hit."
Scott Schebler homered for the Reds, his 10th of the season.
MOMENTS THAT MATTERED
Coming up empty: The Reds had a chance to put some pressure on the Giants late after Schebler's one-out double in the eighth. As was the case on Friday with runners on base, Cincinnati was again unable to bring Schebler home. San Francisco reliever Hunter Strickland got Patrick Kivlehan to pop out, and after balking Schebler to third, the right-hander retired Devin Mesoraco on a groundout.
Clutch hit from the kid: The Giants have had trouble scoring this season, let alone getting some insurance runs, which is why Kelby Tomlinson's two-out, RBI infield single in the seventh was critical. Tomlinson was hitless in his previous eight at-bats before hitting a grounder to shortstop Jose Peraza. The ball hit off the heel of Peraza's glove, allowing Tomlinson to beat the throw by a half step while pinch-runner Gorkys Hernandez scored from third.
"We're still not putting up big numbers, but we made the most of our hits," Bochy said. "It was good to tack on that last one to give us a little margin of error."
SOUND SMART WITH YOUR FRIENDS
Belt's home run was the sixth of his career that landed in the waters of McCovey Cove, the third-most by a Giants player. Home run king Barry Bonds had 35 splash hits, and Pablo Sandoval had seven during his tenure.
San Francisco's Joe Panik was thrown out trying to steal second base in the eighth inning for what would have been the third out. Bochy challenged the call and after a review that lasted 1:44 minutes, the play was overturned and Panik went back to second. It's the seventh successful challenge in 11 attempts by the Giants this season.
Reds: The Reds will send right hander Tim Adleman (2-1, 4.44 ERA) to the hill in Sunday's finale at 4:05 ET to make his first career start against San Francisco on MLB.TV. The 29-year-old is coming off consecutive wins against the Pirates and Yankees, combining to allow five earned runs in 11 innings with 11 strikeouts.
Giants: Right-hander Jeff Samardzija (0-4, 5.44 ERA) faces the Reds for the 26th time in his career in the series finale Sunday at 1:05 p.m. PT on MLB.TV. Samardzija has had eight strikeouts or more in four of his seven starts, but his five losses this season are tied for the most in MLB.
Watch every out-of-market regular-season game live on MLB.TV.