SAN FRANCISCO -- This time, the Colorado Rockies didn't wait until the ninth inning to overcome a late deficit.

The Rockies tagged the Giants' bullpen for four runs in the eighth inning Sunday, shocking San Francisco for the third day in a row.

The 8-7 decision Sunday was Colorado's fifth win in a row, while the Giants were swept for the first time this year.

"I've said it since spring, this club is different," Rockies manager Walt Weiss said. "The mentality of this club is different. We've been tested a lot early on with injuries ... but these guys don't care. They just show up and compete."

They competed all weekend, coming from behind in all three games.

"It stinks for us. We should've won a lot of these games we lost of this homestand. We're just going through a tough stretch right now," Giants left-hander Madison Bumgarner said. "Not to take anything away from the Rockies. They've got one of the best offenses in the league, even with the guys they've got down."

Bumgarner did his share to help his team win. He pitched seven innings, struck out nine, threw out a runner at third, and even hit a solo home run in the fifth. He walked four and gave up six hits. The Giants led 7-4 when Bumgarner exited, but the bullpen couldn't protect the lead.

Colorado scored four times in the eighth off right-hander Juan Gutierrez (1-2) and lefty Javier Lopez to move in front. The decisive blow was pinch hitter Justin Morneau's double to left field off Lopez that scored the tying and go-ahead runs. Morneau was the first batter Lopez faced.

Rockies shortstop Troy Tulowitzki (3-for-4) opened the inning with a single off Gutierrez. With one out, Drew Stubbs tripled home Tulowitzki with a shot high off the wall in right. The Colorado center fielder scored on catcher Michael McKenry's infield hit.

After Gutierrez walked third baseman Charlie Culberson, Lopez entered and gave up a Morneau's hit that put Colorado on top 8-7.

As a pinch hitter, Morneau had a slightly different approach at the plate.

"Just trying to have a quality at-bat, just try to put some good swings on the ball, and try not to do too much," the veteran said. "In the limited pinch-hitting opportunities that I've had, I think the times when you get in trouble is when you're up there trying to hit a home run. ... The simplest approach is sometimes the best, and that's all I was trying to do today."

The Giants jumped out to a 3-0 lead in the second inning. Left fielder Tyler Colvin and shortstop Brandon Crawford opened the second with back-to-back walks before second baseman Ehire Adrianza singled home a run.

Bumgarner bunted, and Rockies pitcher Juan Nicasio throw the ball away trying for the out at first. Crawford scored, and everybody was safe. Center fielder Gregor Blanco and right fielder Hunter Pence followed with back-to-back singles, bringing in another run.

Nicasio lasted just two-plus innings, giving up three runs on four hits and four walks while striking out two. He has a 16.36 ERA in June, but he did manage to get out of two bases-loaded jams with no outs. In all, the Giants left 14 men on base.

"I thought early we had a chance to just put that game away," San Francisco manager Bruce Bochy said. "We had the bases loaded twice and couldn't get a run in, and those things sometimes catch up with you."

Early on, though, the Giants piled on runs. Pinch hitter Hector Sanchez, third baseman Pablo Sandoval and Bumgarner all went deep for the Giants, while Tulowitzki hit his 18th home run of the season for Colorado. Sanchez entered the game in the fourth inning in place of catcher Buster Posey, who took a foul ball off his mask. Posey was tested for a concussion but was feeling better after the game. He expects to start Tuesday after the Giants' off day.

Colvin added an RBI single to score Sandoval in the sixth, making it 7-4.

Rockies reliever Matt Belisle (2-2) threw a scoreless seventh inning to earn the win.

With Colorado closer LaTroy Hawkins pitching in the bottom of the ninth, Adrianza worked a one-out walk. When the next batter, left fielder Juan Perez, was called out on strikes, Bochy stormed onto the field, emphatically argued the call, and was ejected for the second time this year. Hawkins got Blanco to fly out to end the game and earn his 14th save of the year.

San Francisco finished its seven-game homestand 1-6 against the Washington Nationals and the Rockies. Despite that, the Giants (43-27) still own the best record in baseball. They head to Chicago to face the White Sox in interleague play starting Tuesday, while the Rockies will head to Los Angeles for a three-game set with the Dodgers that starts Monday.

NOTES: Giants CF Angel Pagan was scratched an hour prior to first pitch due to lower back stiffness. Gregor Blanco moved to center field and batted leadoff, and Tyler Colvin played left and hit sixth. ... With his inside-the-park home run in the ninth inning of Saturday's game, Rockies OF Brandon Barnes now has two homers on the season. The other was also an inside-the-park home run (at Coors Field on June 5 against Arizona), which makes him the first major league player in 31 years whose first two homers of the year were both hit inside the park. ... Giants RHP Santiago Casilla (strained right hamstring) made his second rehab appearance for Class A San Jose on Saturday night, tossing two hitless innings and allowing one walk. He is expected to be activated before the team returns to action Tuesday.