SAN FRANCISCO -- Jacob deGrom allowed two hits over eight scoreless innings and Eric Campbell became the first Met to homer in July en route to New York's series-clinching 4-1 win over the Giants on Wednesday afternoon at AT&T Park.
"That felt good," Campbell said. "Everything felt good today -- series win, good road trip, happy flight home. So we're feeling good right now."
deGrom carved up the Giants' depleted lineup that was without All-StarBuster Posey, who is nursing tightness in his right hamstring. deGrom struck out 10 and walked just one, marking the seventh time in the right-hander's career he has punched out double-digit batters.
"We needed it," deGrom said. "It's a good way to go back home. We won both series and we're looking forward to playing the last couple of games at home before the All-Star break."
Jake Peavy looked solid for the second straight outing since returning from the disabled list, allowing two runs (one earned) on six hits while striking out five over seven innings.
"What a gutty effort," Giants manager Bruce Bochy said. "This game's hard enough to play when you're not 100 percent -- especially pitching when your back is bothering you -- but it seems like that's behind him and he's throwing the ball very well."
MOMENTS THAT MATTERED All-Star effort: In his final outing before heading to Cincinnati for the Midsummer Classic, deGrom was his usual dominant self. After giving up a two-out single in the fourth inning, deGrom retired 13 consecutive batters en route to his sixth win in his last eight decisions.
"When you're going against a guy like this you've got to play perfect ball," Giants manager Bruce Bochy said. "That's why he's on the All-Star team." More >
Baserunning blunder: With runners on first and second and one out in the third, Joe Panik slapped a line drive to left field. The ball hung in the air long enough that Justin Maxwell hesitated while running to third base. Left fielder Campbell looked like he might dive for it, but instead stopped short to gather the ball and throw Maxwell out at third.
"I was in between whether to try to catch it or not," Campbell said. "I didn't want to dive for it and have the inning explode if the ball gets by me. I just happened to notice that he wasn't too far to third, and just kind of threw."
The drought is over: When Campbell hit a two-run homer off Jean Machi in the ninth, it snapped a drought of 415 consecutive plate appearances without a home run for the Mets, spanning 11 games. Mets pitchers, meanwhile, are working on their own homerless streak, now 152-batters-faced-and-counting without allowing one.
"Are we a big power team? I don't think we're a big power team," hitting coach Kevin Long said. "So we're going to go through some stretches where we don't hit a lot of home runs. Is it nice to have a guy hit a home run? Absolutely. It was a big home run from Soup, and one we desperately needed."
Ballot stuffing: Though the Mets took a four-run lead into the ninth, the Giants quickly shaved that to three on Hunter Pence's RBI single off Bobby Parnell. That created a save situation for Final Vote candidate Jeurys Familia, who locked down the final two outs for his 24th save in 26 chances. More >
SOUND SMART WITH YOUR FRIENDS
The Mets have not had a complete game since Zack Wheeler threw one June 19, 2014. deGrom had a chance on Wednesday, finishing at 99 pitches, but manager Terry Collins said he did not want to push deGrom too much given his innings limit this summer.
Maxwell led off the bottom of the third inning with a ground ball to the Mets' Daniel Murphy, who made an errant throw to first baseman Lucas Duda. Duda came off the bag, caught the ball and tagged Maxwell on the helmet as he crossed the base. The umpires initially ruled Duda made the tag before Maxwell touched first, but after a brief review, replay officials determined the runner's foot touched first base before the tag was applied.
WHAT'S NEXT Mets: The Mets' last off-day before the All-Star break awaits them on Thursday before they begin their final first-half series Friday against the D-backs. Rookie Noah Syndergaard, who is 1-0 with a 2.25 ERA in his last four outings, will start opposite right-hander Chase Anderson in the 7:10 p.m. ET game at Citi Field.
Giants: After an off-day on Thursday, the Giants welcome the Phillies to AT&T Park to open up a three-game set. All-Star Madison Bumgarner takes the hill for Friday's 7:15 p.m. PT game. The left-hander earned a win against Philadelphia in his only meeting with the Phillies this season, allowing five runs in eight innings while striking out 11 in an 8-5 victory.
Anthony DiComo is a reporter for MLB.com. Follow him on Twitter @AnthonyDiComo and Facebook, and listen to his podcast. Oliver Macklin is an associate reporter for MLB.com. This story was not subject to the approval of Major League Baseball or its clubs.