SAN FRANCISCO (AP) Madison Bumgarner quickly forgot about a rough inning and returned to throwing quality strikes. It also helped that Brandon Crawford tossed some momentum his way.
Crawford hit a three-run homer, Bumgarner survived a shaky second inning and the San Francisco Giants ended a three-game losing streak to Colorado, beating the Rockies 6-4 on Friday night.
''Crawford was huge for us,'' Bumgarner said. ''It was a rough second inning all the way around and that changed the ballgame.''
Hunter Pence, who had three hits, Matt Duffy and Brandon Belt also drove in runs for the Giants, who ended a two-game slide.
''You always want to answer back and Crawford's three-run homer put us right back in the game,'' Duffy said. ''It felt like we had the momentum again. It erased the second inning and we finished the comeback.''
Bumgarner (4-2) won his third straight start, retiring 15 of 17 after giving up all four runs in the second. He allowed seven hits, walked one and struck out 10 in 7 1/3 innings.
''It's not exactly what I wanted but you have to throw that aside and just compete,'' Bumgarner said. ''We had to win today after last night's embarrassing game. That was no fun.''
Mark Reynolds collected three hits and an RBI for the Rockies, who had won five of their previous seven and pounded the Giants 17-7 on Thursday. Dustin Garneau also drove in a run.
''You're only going to get an opportunity or two against Bumgarner and you have to maximize those opportunities,'' Rockies manager Walt Weiss said. ''Once he settles in, you know he's going to be tough. It was hard to create against him later in the game.''
Chad Bettis (3-2) lasted six innings, giving up five runs on eight hits. He walked two and struck out four. He also drove in a run with a squeeze bunt.
Nolan Arenado doubled leading off the second. Reynolds and Ryan Raburn each singled and Gerardo Parra was safe on Joe Panik's throwing error, which allowed a run to score and drew parallels to the way Thursday night's 13-run inning began.
Bumgarner gave up a sacrifice fly and Bettis' bunt, then never allowed a runner past first base the rest of his stint.
Cory Gearrin got the final two outs of the eighth, stranding a pair of runners, and Santiago Casilla worked the ninth for his seventh save in nine chances.
Hall of Famer Willie Mays was in town to celebrate his 85th birthday. The Giants showed video greetings to Mays from President Barack Obama, Los Angeles Dodgers announcer Vin Scully and Michigan football coach Jim Harbaugh, among others.
''I'm sure he has a lot of things he could be doing, but he chooses to come here and share stories,'' Duffy said. ''In my opinion he's the best baseball player ever and it's something special.''
Added manager Bruce Bochy: ''It's an honor and a privilege to have one of the greatest, if not the greatest, hanging out with you. You know he loves and has a passion for the game.''
Rockies: C Nick Hundley was placed on the 15-day disabled list with a strain in his left oblique. He was scratched from Thursday night's starting lineup just before the start of the game. C Dustin Garneau was recalled from Triple-A Albuquerque to take his place.
Giants: RHP Albert Suarez was called up from Triple-A Sacramento to strength the bullpen. He's been a full-time starter through his minor league career. RHP Vin Mazzaro was designated for assignment to make room for Suarez.
Rockies: RHP Jon Gray (0-1, 7.98) starts Saturday's game. He'll be making his first start against the Giants.
Giants: Johnny Cueto (4-1, 3.61) takes the mound Saturday against the Rockies, against whom he's 4-2 in eight career starts.