Crawford went 2-for-4 with a second-inning RBI double to lift his Cactus League batting average to .365. Pence, batting .361 for the spring, had only one hit, but it was a two-run double that snapped a 1-1 tie.
Right-hander Andrew Cashner pitched four capable innings in his pursuit of San Diego's No. 5 starter's job. He left with the score tied, 1-1, after Guillermo Quiroz sliced a leadoff double in the fifth. Marco Scutaro drew a two-out walk from Anthony Bass before Pence lashed his double, scoring both runners.
San Diego narrowed the difference to 3-2 in the sixth against Giants reliever Santiago Casilla. Mark Kotsay doubled and was replaced by pinch-runner Travis Buck. Gregorio Petit's one-out single chased home Buck.
San Diego's Alexi Amarista opened the scoring in the first inning by tripling to center field and scoring on Will Venable's groundout. That was the only run yielded by Giants starter Yusmeiro Petit, who lasted four innings.
Up next: As the Padres inch closer to breaking camp, they'll head to Goodyear on Wednesday for a game against the Reds at 1:05 p.m. PT. Look for two of the team's hottest hitters -- catcher Nick Hundley and first baseman Kyle Blanks -- to get some swings against the Reds. Hundley is hitting .409 and has three home runs this spring. Blanks leads the team with 20 hits and is hitting .345.