"Colly did a great job tonight," D-backs second baseman Aaron Hill said. "I know he didn't go as deep as he wanted to go, but he did a great job just keeping them right there and the bullpen did the rest."
The win was just the third in the past 10 games for the D-backs, while the reeling Giants have now dropped six straight.
Collmenter (5-4) labored early as the Giants managed to put together a two-out rally in the first inning that turned into a 1-0 lead.
"I don't think I've ever had a clean, crisp outing against these guys," Collmenter said. "They're a good club, a lot of experienced hitters. I felt as good as I have in the last handful of starts, was able to make some really good pitches, especially when I needed to, but they battled."
After a 1-2-3 second, Collmenter allowed a pair of hits in the third, a double in the fourth and a pair of walks in the fifth yet the Giants were unable to convert those opportunities into runs.
"He dodged some bullets there," Giants manager Bruce Bochy said. "Give him credit. That's always frustrating -- you get that many pitches in five innings and end up with one run."
Pitching in and out of jams, though, did limit how deep the right-hander was able to pitch as he was done after five innings and 109 pitches.
By then, Collmenter already had a 3-1 lead, thanks to an offense that capitalized on the chances it had against Tim Lincecum (5-5).
With one out in the fourth, Lincecum's nemesis Paul Goldschmidt, who had singled in the first, drew a walk, and one out later he scored on Hill's single up the middle.
Martin Prado then followed with a double to center and the D-backs grabbed a 2-1 lead.
"Those are always big," Hill said of two-out hits. "Those kind of change the game. If you can get those two-out knocks, especially with runners in scoring position, that's a big blow."
Ender Inciarte singled to lead off the fifth and Lincecum retired the next two hitters before Chris Owings blasted a pitch off the center-field wall.
Inciarte scored easily on the play and Owings was thrown out at the plate attempting to turn the play into an inside-the-park homer.
The D-backs tacked on a run in the sixth when Goldschmidt doubled off the wall and scored one out later on a sacrifice fly from Hill to put Arizona up 4-1.
"He just did a great job of never giving in," Goldschmidt said of Collmenter. "Just finding a way to get outs. They have a really, really good lineup and he fell behind sometimes, and he mixed up his pitches when he had to, used both sides of the plate."
Oliver Perez, Evan Marshall, Brad Ziegler and Addison Reed each pitched an inning in relief of Collmenter to close things out.
"Kind of unfortunate that I wasn't more efficient and left a lot of work for the bullpen to do," Collmenter said. "They were outstanding tonight. As good as I've seen them."
The D-backs' defense, particularly in the outfield, helped Collmenter.
Inciarte made a couple of nice grabs on the warning track after long runs and right fielder Gerardo Parra snagged a deep fly by Brandon Crawford that could have led to two more San Francisco runs in the fifrst.
"I used every bit of the park," Collmenter joked. "Some pitches that I thought were better than they were. We've got a big outfield out there and fortunately they hit them so high that we had a chance to track them down. But we have a good outfield out there, a good defense."