Bonds hit in head during BP

? The best contact Barry Bonds made was with his forehead.

Bonds didn’t come any closer to catching Babe Ruth after getting bonked in the head during batting practice. Instead it was Pedro Feliz who went deep, and Jason Schmidt pitched a gem to lead the San Francisco Giants over the Milwaukee Brewers, 2-0, Wednesday night.

Bonds remains at 712, two shy of matching Ruth for second place.

Schmidt (2-2) outpitched Dave Bush (2-3), scattering five hits and striking out seven for his ninth career shutout. He retired 13 of 14 at one point, allowing only an off-the-wall double to Geoff Jenkins.

Bonds looked creaky, old and overmatched against Bush and the rest of the Brewers. He went 0-for-4, and the best he could do was a pop to shallow center in the third.

Part of that could be the knock he took before the game. Bonds was standing behind the cage during batting practice when a ball hit by Giants infielder Kevin Frandsen struck the net – and Bonds. The slugger yelped, then let out an expletive.

Diamondbacks 5, Cubs 1

Phoenix – Chad Tracy hit a three-run home run, and Arizona beat Greg Maddux. Maddux (5-1) fell to 1-9 lifetime against Arizona, with a 5.21 earned-run average in 14 starts.

Padres 11, Dodgers 5

Los Angeles – Josh Barfield hit a tiebreaking, two-run homer in a five-run eighth inning, and San Diego extended its winning streak to four.

Astros 5, Cardinals 4

Houston – Roy Oswalt (5-1) pitched eight strong innings, and Lance Berkman drove in three runs to lead Houston.

Marlins 6, Nationals 5

Washington – Rookie Hanley Ramirez delivered a go-ahead, pinch-hit RBI single off Washington closer Chad Cordero in the ninth to help Florida end a five-game losing streak.

Rockies 3, Reds 0

Denver – Jeff Francis allowed four hits over seven innings for his first win in six starts this season, and Colorado ended a two-game losing streak. Francis (1-2) struck out five and walked one in winning for the first time since Sept. 28 at Atlanta, his last start last season.

Mets 4, Pirates 3 (12)

New York – Carlos Delgado homered leading off the 12th inning, giving New York a victory over Pittsburgh after another blown save by Billy Wagner cost Pedro Martinez his sixth win.

Phillies 5, Braves 4

Philadelphia – Aaron Rowand’s two-run homer in the eighth inning lifted Philadelphia to its third straight comeback victory. The Phillies have won a season-high four straight games.