SAN FRANCISCO -- Andres Torres spent the better part of the last few weeks watching his teammates celebrating on television.
When it was finally his turn, he wasn't about to miss out on all the fun.
Torres delivered the go-ahead RBI double, Aubrey Huff hit a tying home run and the San Francisco Giants rallied from three runs down for a 4-3 victory over the Arizona Diamondbacks on Wednesday night.
"It feels great now to be a part of it again," said Torres, who returned from the 15-day disabled list a day earlier after a strained left Achilles forced him to do a rehab stint at Triple-A Fresno. "I feel healthy again, and I'm glad I can do my part."
He scored on Torres' double to right-center field off reliever Juan Gutierrez to give San Francisco a season-high fifth straight win. The Giants (20-16) improved to four games over .500 for the first time this season.
"The one thing I have to say is I have to do something for this team," said Tejada, who finished with three hits and started to break out of his season-long slump. "They put a lot of confidence in me, and I have to produce."
So did most of the Giants in another all-around effort.
The Giants didn't wait as long to come back this time.
After wins in the final at-bat in three of the previous four games, San Francisco fell behind again before squeaking out runs and leaning on its bullpen.
Tejada came through with the one-out double in the sixth. Then Gutierrez came in and got pinch-hitter Pat Burrell to fly out to left before Torres' double put San Francisco ahead 4-3.
"We had a ton of chances early," Diamondbacks manager Kirk Gibson said. "We had chances to keep them from scoring, too. It's disheartening but you have to keep plugging."
The bullpen's effort was just the kind of pick-me-up that worked so well for the World Series champions last season. And it was a much-needed boost for the starting pitcher again.
"That's kind of our way, I think," Giants manager Bruce Bochy said. "If you look at what we did last year, it was somebody different it seemed like coming up with the big game-changing contribution."
Sanchez struggled with his control again but managed to minimize the damage.
Johnson had a leadoff double in the first inning, and Stephen Drew drove him in two batters later with a grounder to first base. Blanco had an RBI single in the second and a solo homer to left in the fourth, giving Arizona a 3-0 lead.
That seemed to be a comfortable cushion for Galarraga, although no lead seems to be enough against these Giants lately.
Tejada showed signs of busting out his slump with a run-scoring single with two outs in the fourth. After loading the bases with a walk to Sanchez, Galarraga threw a wild pitch that went to the backstop and scored Aaron Rowand from third.
Huff started the fifth with a solo homer over the right-field wall, tying the score at 3. The home run was Huff's fourth of the season.
Galarraga left after 5 1/3 innings, allowing four runs and eight hits and striking out four. Arizona has lost three straight games and four of its last five.
"I walked the pitcher, I threw the wild pitch," Galarraga said. "The only good swing was the home run. It was down but in the middle of the plate."
Giants C Buster Posey left in the seventh after taking consecutive foul balls from Kelly Johnson off his mask. Bochy will give Posey Thursday off with a day game, and Posey said he was fine after undergoing precautionary tests for a concussion. ... Giants LHP Barry Zito threw off the mound before the game for the first time since he sprained his right foot in a start April 16. He threw about 10 minutes and will have another bullpen session later this week. ... Gibson said RHP Josh Collmenter will make his first start in the majors Saturday against the Dodgers. Collmenter was brought up from the minors a couple weeks ago and has pitched only in relief.