Peralta (14-6) scattered seven hits and allowed just one run in his fifth straight winning start. He has not lost since July 8 against the Phillies.
Ryan Braun and Khris Davis both had RBI doubles for the Brewers, who have won eight of their last 11 home games since losing six in a row at Miller Park from July 7-12.
Jake Peavy (0-3) was solid for the Giants, but only received one run of support. He let in just three runs over 5 2/3 innings, but gave up nine hits and walked three in his 12th consecutive losing decision. The former Cy Young award winner is winless in his last 18 starts with Boston and San Francisco.
Hunter Pence knocked in the lone run for the Giants, who haven't won a series against a team with a winning record since taking three of four games against St. Louis from May 29-June 1.