Brandon Crawford homered with one out in the bottom of the ninth inning to give the San Francisco Giants their fourth straight victory, 1-0 over the Colorado Rockies on Wednesday night.
After starters Madison Bumgarner for San Francisco and Kyle Freeland for Colorado put up matching performances of seven spotless innings, the game was decided by the bullpens.
Left-hander Harrison Musgrave (0-3) entered in the ninth to face the left-handed-hitting Crawford. The move backfired when Crawford launched a high drive that cleared the wall in right field for his third career walk-off homer, sending the Rockies to their fourth consecutive loss.
Crawford was mobbed by teammates at home plate as the Giants improved to 42-39 at the halfway point of the season, 12 games ahead of their pace from a year ago.
Reyes Moronta (4-1) got two outs for the win.
Bumgarner retired the first 14 batters he faced before Carlos Gonzalez became the first Colorado hitter to reach on a broken-bat double that landed just inside the left-field line.
Bumgarner walked the next two batters to load the bases before escaping the jam by striking out Freeland. The 2014 World Series MVP allowed just two hits with eight strikeouts in his second consecutive scoreless start. He pitched eight shutout innings to beat San Diego for his first win of the season last Thursday.
Freeland was just as stingy, permitting only four hits and pitching around a pair of errors by first baseman Ian Desmond. Freeland got Pablo Sandoval to ground out with runners on first and third to end the fourth, and retired Crawford on a popup with runners at the corners to end the sixth.
Freeland has 11 quality starts in 16 appearances this season.
TRAINER'S ROOM: Rockies: RHP Scott Oberg and LHP Mike Dunn were activated from the disabled list. RHPs Jeff Hoffman and Brooks Pounders were optioned to Triple-A Albuquerque.
Giants: RHP Jeff Samardzija (right shoulder) will likely need at least one more rehab start after lasting just four innings for Triple-A Sacramento on Tuesday. Samardzija's outing was cut short because he threw 40 pitches in the first.
MILESTONE: Bumgarner struck out DJ LeMahieu to open the game, giving him 1,500 Ks for his career in 1,534 1/3 innings. He's the ninth-fastest lefty to reach the mark in the live ball era starting in 1920.
UP NEXT: Jon Gray (7-7) looks to beat the Giants for the first time in six career starts in the series finale. Gray is coming off his third career 12-strikeout game, the most in Colorado history. Chris Stratton (8-5) pitches for San Francisco.