SAN FRANCISCO -- The countdown is on. Barry Bonds is closing in on Hank Aaron in a hurry.
Bonds hit his 740th home run yesterday, connecting for the second consecutive game and helping Matt Cain earn his first win of the season in the San Francisco Giants' 2-1 victory over the Arizona Diamondbacks.
"It's awesome for him to be swinging it like he's swinging it," Cain said.
Cain wasn't bad himself.
The righthander pitched a three-hitter for his third career complete game and first since a one-hitter last May 21 at Oakland. He struck out four and walked four in a game that lasted just 1 hour 56 minutes. It was the fastest nine-inning game in the major leagues since Arizona beat St. Louis, 3-0, in 1:54 last Sept. 9, according to the Elias Sports Bureau.
Bonds moved within 15 homers of Aaron's record. With two outs in the fourth inning, he sent the first pitch from Yusmeiro Petit (0-1) into the seats in the right-field arcade for his sixth homer of the season.
"He doesn't have anything bothering him," Giants second baseman Ray Durham said. "The sky's the limit."
The 42-year-old Bonds walked out to left field in the top of the fifth to a loud standing ovation, tipping his cap as he made his way to his spot. Fans bowed over the left-field fence.
Petit, called up from Triple A Tucson before the game to make his second major league start, became the 438th pitcher to give up a homer to Bonds.
"He changes your club, your lineup, including the opposing pitcher seeing Barry out there," San Francisco manager Bruce Bochy said. "I can't say enough about what he's done for us the last few days. It's pretty remarkable what he's doing at his age . . . Since coming over here, it amazes me what he does. It tells you how much better he is than any of the rest of us."
Bonds flied out and struck out looking in his other two at-bats, but his home run and Pedro Feliz's shot leading off the third led the Giants to their season-best fifth straight victory.
Bonds hit his 739th homer in the second inning of Saturday's 1-0 victory. This marked the first time Bonds homered in back-to-back games since Sept. 22-23 last year at Milwaukee. Bonds had homers in three in a row from Sept. 2-4, the first two at Chicago and the third in Cincinnati.
Cain (1-1) allowed a leadoff single by Eric Byrnes to start the game, but that was it until Byrnes and Alberto Callaspo each singled with none out in the ninth. Orlando Hudson grounded into a double play, bringing home the Diamondbacks' lone run.
Cain, who had thrown 101 pitches at that point, then received a visit on the mound from pitching coach Dave Righetti and stayed in the game.
After walking Chad Tracy, Cain retired Tony Clark on a game-ending grounder. Durham made a great stop on the play. If the ball had gone by him, Cain would have been lifted.
"His fastball has life to it," Byrnes said. "It has a giddy-up at the end. He's a different type of guy than Barry Zito. He throws fastballs that register in the low 90s, and they appear a lot faster than that."
Cain bounced back after a no-decision at Colorado last Sunday, when he pitched seven scoreless innings and allowed only two hits.
"There's nothing more respectful [than] for him to put the confidence in me to complete the ninth," Cain said about Bochy. "It was great to be able to be back out there."
Cain, who led all NL rookies with 13 wins last season, pitched well enough to win in his first three starts. He gave up only three hits in his previous two outings -- and one run in 14 innings.
Arizona's season-long skid reached four games with the club's sixth defeat in seven games. The Diamondbacks went 1 for 20 during the series with runners in scoring position. They hope getting Randy Johnson back to make his season debut tomorrow against San Diego helps to end their funk.
"We knew pitching would be the dominant force in the division, and so far it has," said Arizona manager Bob Melvin. "We feel good about Randy going Tuesday."
Aside from the two homers, Petit was pretty good. He struck out five and didn't walk a batter, allowing four hits in seven innings.