MIAMI (AP) Jorge Alfaro has put an 0-for-20 skid behind him and been a catalyst for the Marlins in their recent surge.
''There's going to be good times and bad times,'' Alfaro said. ''I feel I was in a little slump, but now I can tell that I'm trying to fight back and slow down the game a little bit more and put the ball in play.''
Alfaro is hitting .390 (16 for 41) with three doubles, three home runs, and nine RBIs over his last 11 games.
''He's looking really good,'' Marlins manager Don Mattingly said. ''He started getting back to the middle of the field.''
Neil Walker had a tiebreaking, pinch-hit double in the seventh and Starlin Castro hit the first triple of the season for the Marlins, who have won nine of 12.
''It really has been a team thing,'' Mattingly said.
San Francisco's Madison Bumgarner (3-5) allowed two runs and six hits in six innings.
''We're so much better than what we're playing,'' Bumgarner said. ''It's tough. We're a lot better team than the results are showing.''
Brandon Belt hit his eighth home run of the season and drove in both runs for the Giants.
''I was good with the game, but we needed more offense,'' Giants manager Bruce Bochy said. ''We're not a team that puts up a lot of runs so we play it tight. We've got to get these bats going.''
Marlins starter Pablo Lopez allowed four hits and one run in six innings. Nick Anderson (2-2) pitched a scoreless seventh while Sergio Romo escaped the ninth for his 11th save in 12 chances after allowing a sacrifice fly to Belt and leaving runners stranded at the corners by striking out Steven Duggar to the end the game.
''It's fun playing against old teammates and friends, but this counts and I'm glad I was able to keep them from tying the game,'' said Romo, who won three titles with the Giants.
Walker hit a double down the right-field line off Mark Melancon, scoring Alfaro, and Garrett Cooper added a sacrifice fly in the seventh extending the lead to 3-1.
Castro led off the eighth with a triple to center when Duggar's diving attempt came up empty and the ball rolled to the wall. The triple ended the longest drought with a triple to open a season in club history ending at 53 games, 36 more than the previous longest stretch set in 1996.
''A stand-up triple, speed,'' Mattingly said.
Castro scored on a base hit by Harold Ramirez for a 4-1 lead.
Castro gave the Marlins an early lead with a sacrifice fly and Belt tied it with a home run to right-center.
MARLINS EYEING HITTERS IN DRAFT
The Marlins will pick 4th, 35th, and 46th on the first day of the MLB Draft on Monday and will be on the lookout for position players.
''I would say right now our mindset is on position players,'' chief executive officer Derek Jeter said. ''I think we have a great deal of depth in our organization on the pitching side. Having said that you can never have enough pitching, but I think the top of the draft at least we're looking more towards position players.''
Giants: RHP Nick Vincent (pectoral strain) was placed on the 10-day injured list. ''If I had to guess (he will be out) two to three weeks, but don't hold me to that,'' Bochy said. ''It's a pec strain and sometimes these things take a little bit longer, but that's my guess.'' ... RHP Trevor Gott (forearm) threw 15 pitches off the mound. . LHP Travis Bergen (shoulder) is scheduled to throw off the mound in Arizona on Thursday.
Giants: RHP Tyler Beede (0-1, 13.50 ERA) will be recalled from Triple-A Sacramento to make his second start of the season.
Marlins: RHP Sandy Alcantara (2-5, 4.50) allowed five runs, four earned, in five innings in his last start at Washington.
Copyright 2019 by AP. Any commercial use or distribution without the express written consent of AP is strictly prohibited.