PHOENIX (CBS / AP) — Cody Ross had a two-run double and scored on a double steal in the fifth inning to help San Francisco build a five-run lead, then the Giants held on for a 6-5 win over the Arizona Diamondbacks on Tuesday night to stay atop the NL West.
The Giants took advantage of an off-kilter Josh Collmenter (4-2) to lead 5-0 after five innings, but starter Matt Cain (6-4) nearly gave it all back over the next two.
Miguel Montero hit a three-run homer off the San Francisco right-hander in the sixth inning to make it 5-4 before Nate Schierholtz gave the Giants the extra cushion they needed with an RBI double in the seventh.
Closer Brian Wilson walked two and had a wild pitch with two outs in the ninth, but struck out Stephen Drew to close out his 19th save.
This three-day meeting for first place features teams in different states of mind.
The Giants have had a rough go of defending their World Series title, battered and beaten down by a tough stretch in the schedule and a tougher stretch of injuries.
Catcher Buster Posey (ankle) is out for the season, second baseman Freddy Sanchez (shoulder) for who knows how long and rookie Brandon Belt (wrist) possibly another month. San Francisco had gone 20 days without a day off before traveling on Monday.
Despite the roster attrition, the Giants have stayed near the top of the NL West, winning eight of 12 games to enter the series against Arizona a half-game ahead. They also got slugging third baseman Pablo Sandoval back after more than a month on the DL with a broken right wrist.
The Diamondbacks had made a surprising run toward the top.
Already 6 ½ games out of first at the end of April, Arizona turned it around quickly in May, a 15-2 stretch igniting seven wins in 10 series. The Diamondbacks were coming off three straight road wins over Florida, moving them seven games above .500 for the first time since Aug. 23, 2008 (68-61).
A rare off night by Collmenter spoiled a chance to keep it going.
Sandoval had a run-scoring off him in the first, then Cain helped himself with a sacrifice bunt to score another run in the fourth. Ross made it 5-0 in the fifth with his RBI double and run on the double steal.
Collmenter allowed five runs—one fewer than his previous 14 outings combined—on eight hits and walked three.
Cain nearly gave it all back.
The right-hander had the Diamondbacks guessing through four innings before Ryan Roberts drove in a run with a sacrifice fly in the fifth. Montero made what had been a one-sided game close with one swing of the bat the next inning, lifting his three-run homer to right.
Schierholtz put San Francisco up two with a double in the seventh inning, an important run after Arizona’s Justin Upton hit run-scoring double down the line in left in the bottom half made it 6-5.
Upton’s hit chased Cain, who allowed five runs and eight hits in 6 2-3 innings, but San Francisco’s bullpen held after that— barely.
Notes: Despite a temperature of 104 at first pitch, the roof at Chase Field was open for the game. … Arizona CF Chris Young had his errorless streak end at 66 games by booting Schierholtz’s double in the seventh. … Cain has pitched 1,188 career innings, passing John Montefusco for eighth on San Francisco’s all-time list.
(Copyright 2011 by CBS San Francisco. All Rights Reserved. This material may not be published, broadcast, rewritten, or redistributed. Wire services may have contributed to this report.)