PHOENIX (AP) -- So used to playing close games, the San Francisco Giants almost didn't know what to do with big early lead.
Leading by five runs after becoming the first team to rough up Arizona's Josh Collmenter , the Giants escaped some shaky moments by starter Matt Cain and closer Brian Wilson to hold off the Diamondbacks 6-5 on Tuesday night and maintain their slim grip on the NL West lead.
"Doesn't matter the team, we usually play tight games," Giants manager Bruce Bochy said. "We don't have too many games that get out of hand either way."
Scratching out a few runs while relying on solid pitching had kept the defending World Series champions in the division race with the surging Diamondbacks.
A team with the second-lowest run support in the NL (3.61 per game), the Giants found themselves in an unfamiliar spot after Cody Ross hit a two-run double and scored on a double steal in the fifth inning off Collmenter (4-2).
Leading 5-0 after Collmenter's first shaky outing in a superb rookie season, San Francisco watched Cain (6-4) nearly give it all back, allowing Arizona to pull within 5-4 on Miguel Montero 's three-run homer in the sixth inning.
But, back in the comfort of a close game, the Giants closed it out.
Nate Schierholtz gave San Francisco a cushion run with a run-scoring double in the seventh and the combination of Jeremy Affeldt , Sergio Romo and Javier Lopez bridged the gap to Wilson.
The shaggy-bearded closer made it interesting, walking two and uncorking a wild pitch to put runners on second and third with two outs, but struck out Stephen Drew looking for his 19th save to push the Giants 1 1/2 games ahead of Arizona.
"We were putting together good at-bats - we've had a long string of that," Diamondbacks manager Kirk Gibson said. "I thought we had a real good shot in the ninth inning, just unable to get him in. The guy (Wilson) is pretty good out there."
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 1/2 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 - eight hits and walked three.
"There were a couple of close pitches, but I wasn't commanding the zone like I usually am," said Collmenter, who had his 13-inning scoreless streak end in the first inning. "Wasn't able to pound strikes and get ahead. I was falling behind too much."
Cain nearly gave almost all of it 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.
"I just need to stay locked in and I didn't do that the last couple of innings," said Cain, who has a five-game winning streak against Arizona.
San Francisco's bullpen made sure it didn't hurt him.
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.