Kemp who entered hitting .222, finished 3 for 4. Jon Jay also homered off Peavy and added an RBI groundout.
"I thought overall that's the best we've swung the bats, top to bottom," Padres manager Andy Green said.
Peavy allowed three runs and eight hits in four innings, working out of jams to prevent more damage. In 12 2/3 innings over four appearances, the 34-year-old right-hander has given up 27 hits and 14 runs.
"My body felt a little bit better today," Peavy said. "It was nice to have a night game and work your way into the day. Your body is allowed to wake up. It was fun to get out there and get better. I made some bad pitches, of course. But for the most part, I'm happy with the contact."
Padres starter Andrew Cashner allowed five runs - two earned - and four hits with two walks and a hit batter in four innings. Jarrett Parker hit a solo homer in the first off Cashner, who entered having not allowed a run in five innings.
Brandon Belt doubled, bunted for a single and had a sacrifice fly for the Giants.
Giants: Peavy threw 47 of 73 pitches for strikes and walked one.
"I didn't want to show our hand too terribly much," Peavy said of facing an NL West foe. "Threw a lot of fastballs. . Until that last inning I felt I was getting better and better."
Padres: Yangervis Solarte's error at third led to three unearned runs in the third. But the first run scored on Cashner's wild pitch.
"I thought he had a lot of movement on his two-seam (fastball) and it was running out of the zone a little bit on him," Green said.
Giants: Ace Madison Bumgarner (foot, ribs) had a successful bullpen session and manager Bruce Bochy said they'll decide Friday when he'll make his next appearance. ... CF Denard Span (right shoulder) improved enough a day after being hurt diving for a ball to take at-bats in a minor league game. Bochy expects him to start Friday night. ... RHPJohnny Cueto, hit in the head by a line drive Monday, remains on schedule to make his next start. . OF Kyle Blanks (Achilles) was a late scratch.
Padres: LHP Buddy Baumann (back) remains limited in workouts and has yet to throw in a game.
It's that time of the spring when NL pitchers hit for themselves. Peavy grounded out twice. Cashner reached on Matt Duffy's error at third and aggressively took second as Alexei Ramirez drew a throw advancing to third.
While the Padres were off Wednesday, RHP James Shields pitched in a minor league game to stay on schedule to start the season's second game. Shields' 59-pitch outing lasted 3 2/3 innings. He gave up three hits and no runs, walked two and struck out three.
Padres manager Andy Green indicated RHP Tyson Ross, scheduled to start the April 4 opener against the Dodgers, might pitch in a minor league game Sunday to avoid seeing Los Angeles.
Giants RHP Matt Cain faces Padres RHP Brandon Mauer in Friday night's rematch.