SAN FRANCISCO -- Chad Tracy has already matched his home run total from his impressive rookie season a year ago, and he's showing signs he could be Arizona's offensive star of the future.
Tracy hit a tiebreaking two-run homer in the sixth and the Diamondbacks avoided their longest losing streak of the season, beating the San Francisco Giants 6-4 on Tuesday night.
The 25-year-old Tracy added about nine pounds of muscle to his 6-foot-2, 200-pound frame with a rigorous offseason regimen -- and he is realizing the benefits of some added bulk. He drinks protein shakes in his hotel room before games to make sure he can keep the weight on.
"As you get older, you fill out," Tracy said. "I'm still young. Hopefully I will keep filling out and those home run numbers will keep going up."
Shawn Green hit a tying RBI double two batters before Tracy connected and Green drove in two runs as Arizona ended its five-game skid, which matched the club's longest this year.
Claudio Vargas (1-4) finally earned his first victory of the season in his sixth start and eighth appearance. It was his second start for Arizona after being claimed off waivers from Washington on June 3.
The right-hander barely outpitched Giants starter Brett Tomko. Vargas allowed four runs and eight hits in five innings, struck out five and walked three. He plunked Todd Linden and Mike Matheny in consecutive at-bats in the third.
Vargas hadn't won as a starter since June 2 last year, a stretch of eight winless starts between victories.
"I'm happy because it's my first win and we'd lost a couple games in a row," Vargas said. "The guys helped me get out of some trouble. I'm looking to do things better, but I got my confidence back. That's the most important thing for us."
Brian Bruney worked the ninth for his seventh save in 10 chances.
Linden homered and drove in the go-ahead run in the fifth on a groundout, but the Giants couldn't keep their lead and lost for the third time in four games on a night when a spectacular full moon ascended over the brick-lined right-field fence beginning in the fifth inning as a treat for the start of summer.
Green's tying RBI double in the sixth scored Luis Gonzalez, who started the inning with a double. Then Tracy sent a 2-0 pitch from Tomko into the right-field arcade for his eighth homer of the year.
He was trying to pitch around Tracy.
"I was trying to waste it and I left it over the plate. It was not a good, period," Tomko said. "I try to stay positive. What else can I do, crawl into a hole?"
The Diamondbacks lost 8-3 to the Giants in Monday's series opener and were swept in three consecutive games at Cleveland over the weekend. Arizona also lost five in a row from June 1-5 and is just 6-14 so far this month.
Linden homered to lead off the second for San Francisco, a shot to center for his second homer since joining the Giants from Triple-A Fresno last Tuesday. He had a three-run homer in Sunday's 10-8, 10-inning loss at Detroit.
Pedro Feliz doubled twice, singled and drove in a run for the Giants, who missed several early scoring opportunities.
Tomko (5-9) dug himself a hole right away. Craig Counsell walked on four pitches to lead off the game, then Royce Clayton doubled and Linden couldn't keep the ball in his glove in right field while sliding to try to make the play.
After that, Tomko allowed consecutive broken-bat RBI singles to Gonzalez and Green. Alex Cintron followed by driving in a run when he grounded into a double play to make it 3-0.
Tomko was knocked out of his start last Thursday after only 4 2/3 innings when he gave up seven runs and nine hits at Minnesota. After Tracy's single in the first Tuesday, Tomko retired the next 12 batters he faced before Counsell singled in the fifth.
"We battled back, but once we took a lead, bingo, he gave it up," Giants manager Felipe Alou said. "It's happened a lot this year. We haven't been able to shut them down."
Vargas escaped a bases-loaded jam in the first when he struck out Feliz looking to end it. The Giants loaded the bases again in the third when Vargas plunked Linden and then Matheny to bring in a run.
The Giants stranded 11 and went 1-for-10 with runners in scoring position. ... Diamondbacks 3B Troy Glaus, who fell hard on his right wrist at Cleveland on Sunday, had the day off after he landed on the wrist again in Monday's game. "It's still barking a little bit," manager Bob Melvin said. "You never want to have Troy out of the game." Glaus is expected to play Wednesday. ... Feliz is batting .458 (11-for-24) in his last six games.