"This team never gives up," Luis Rivas said. "We're going to work hard the whole way."
The second baseman had three hits, three RBI and finished a home run short of the cycle, as the Pirates rallied again to beat the Rockies 6-4 on Tuesday night.
Pittsburgh, which fell behind 3-0 to Colorado on Monday before winning 8-4, came back from a 4-0 deficit in the third inning.
Rivas, starting in place of injured second baseman Freddy Sanchez, led the rally. He had a RBI single in the third and added a two-run triple in the fifth against Colorado starter Glendon Rusch.
"When Luis is called upon to start, he has had some big games," Pittsburgh manager John Russell said. "He did a great job tonight."
Rivas, who also doubled in the first, came to bat in the seventh with a chance for the cycle. He hit into a force out and later scored, but admitted he was thinking about the feat.
"A little bit," he said. "I was just trying to put the ball in play and whatever happened, happened."
Down 4-3, the Pirates went ahead by scoring two runs against reliever Matt Herges (3-4) in the sixth. An error by Rockies center fielder Willy Taveras led to a run, and Chris Gomez hit a sacrifice fly to bring home Doug Mientkiewicz with the go-ahead run.
Herges, who blew his fifth save, allowed two runs, two hits and walked a batter in one inning. The right-hander has struggled in July. In nine outings, he has allowed 12 earned runs in 10 1/3 innings.
Herges blamed his command.
"That's exactly what it is," he said. "When the ball gets up, it gets hit. They're a good-hitting team, but you can still get them out when you execute your pitches. Tonight, I didn't."
Jason Bay, who had two hits, added an RBI in the seventh for the final margin.
Nate McLouth had two hits and scored two runs for Pittsburgh. One night after hitting a mammoth home run into the Allegheny River, the outfielder made an outstanding defensive play in the third, leaping at the warning track to catch a fly ball hit by Garrett Atkins.
McLouth is making a case for his first Gold Glove. He hasn't committed an error this season.
"He's done a great job," Russell said. "He's worked awfully hard."
Colorado manager Clint Hurdle was impressed by McLouth, whom he managed in the All-Star Game.
"McLouth's a player," he said. "He plays big. That catch he made tonight, there's not many players in the game that make that catch. He hit a ball in the river (Monday) night. He Mickey Mantled us. I've seen enough."
Jason Davis (1-0), making his first appearance since being called up from Triple-A Indianapolis on Sunday, pitched a scoreless sixth inning and Tyler Yates earned his first save of the season.
Pittsburgh closer Matt Capps is currently on the disabled list with bursitis in his right shoulder, and Yates said he would happy to fill the ninth-inning role. He retired the side Tuesday night.
"The ninth inning is the hardest to pitch for a reliever," said Yates, who has four career saves. "It gets me pumped up. My heart is still racing right now. I kind of like it."
Yates is the only player still on Pittsburgh's roster who has earned a save since Capps' injury. Russell said Yates was his team's best choice Tuesday, on a night when he used five relievers.
"Tyler was the freshest guy," Russell said. "It was a good situation for us."
Brad Hawpe had three hits and two runs, and Ian Stewart had two hits and two RBI for the Rockies.
Colorado had late-inning chances, but left two runners on base in the sixth and seventh.
"We didn't execute well enough to win tonight," Hurdle said. "That's what we leave with tonight, and we get ready for tomorrow's game."
Pittsburgh starter Yoslan Herrera allowed four runs on six hits and four walks in five-plus innings and struck out one. He got his first major league hit when he singled and later scored in the fifth.
Rusch allowed three runs on six hits. The left-hander had won his first three starts since joining the Colorado rotation in July.
Taveras stole his major-league leading 47th base in the first innning. He is closing in on team record of 53, set by Eric Young in 1996. ... Colorado scored three runs in the first inning. The Rockies have outscored the Pirates 12-4 in the first inning in six games this season. ... Pittsburgh popped out four times to Colorado catcher Chris Iannetta.