Tim Lincecum turned in his first quality start of the month and retired 12 straight during one stretch of the game, but was looking like he would be the hard-luck loser -- leaving down 3-1 after six -- before a ninth-inning rally propelled the Giants to a 5-4 win.
San Francisco will look to avoid the late-inning heroics Saturday and will send the right person to the mound to try to ensure that -- left-hander Madison Bumgarner.
Bumgarner is 3-0 in four June starts with a 2.43 ERA, striking out 31 batters while issuing just five walks.
The 22-year-old, who has morphed into one of the best young pitchers in the game, needs to log just 4 1/3 innings to join teammate Matt Cain as the first duo in the Majors to reach 100 innings pitched.
Like Lincecum, the Giants' offense could only muster one run for him in his last start. Bumgarner lasted eight innings in the no-decision, allowing just one run on three hits and retired 18 consecutive batters at one point.
"Give Bumgarner credit, he pitched his butt off," said Seattle's Justin Smoak, who hit a walk-off single in the ninth to spoil Bumgarner's strong performance. "He was keeping us off balance with the cutter in on us and the fastball, changeup and curveball."
Bumgarner will take a 2.92 ERA into Saturday's start and will be up against an A's team that has been playing well lately.
Oakland has won eight of its past 10 games and, despite the loss Friday, has already won more games in June (12) than in each of the first two months of the season.
The A's are 12-7 since dropping a season-high nine straight, have won three consecutive series for the first time since September 2010 and could make it a four in a row by winning the last two of the three-game set with San Francisco.
"It's a great feeling, but there is the next day," manager Bob Melvin said about his team's recent play. "You have to go out there and you can't just say, 'OK, we're playing well, let's throw our gloves out there.' You have to go out there each and every day and try to find a new way to make it even better."
A's: Ross to start in place of Colon
Oakland recalled right-hander Tyson Ross from Triple-A Sacramento to start Saturday in place of Bartolo Colon, who will be placed on the disabled list with a right oblique strain.
Ross will be making his 11th start of the season and is coming off a strong effort against the Padres.
The 25-year-old, who has been up and down with the club all season, earned a no-decision after lasting six innings and allowing just two runs on one hit while striking out a season-high six batters.
"We saw signs of doing what he needs to do, whether it's pitching inside, using his secondary pitches," Melvin said. "The slider was really good last time out. You'd like to think he can build upon that as well."
Ross is 2-6 with a 6.11 ERA over 53 innings.
Jarrod Parker continued Oakland's string of dominant starting pitching of late in Friday's loss.
The rookie Parker lasted six innings in the no-decision but allowed just one run -- the fifth consecutive A's starter to do so. It was also the eighth straight game that A's starters have surrendered two runs or fewer.
Rookie catcher Derek Norris, who made his Major League debut Thursday against the Dodgers, will get the start behind the plate Saturday.
Norris went for 0-for-3 in his first big league game after starting the season in Sacramento.
Giants: Beltin' in June
Brandon Belt has started to swing the bat the way many thought he could and played a key part in Friday's comeback win.
The 24-year-old extended his career-best hitting streak to 10 games with a ninth-inning double that cashed in two runners and tied the game.
During the streak, Belt is batting .419 (13-for-31) with three doubles, his only three homers on the year and nine RBIs.
Belt's hitting .340 in the month of June and the recent surge has increased his on-base percentage to .383 on the year.
Friday's victory marked the 15th one-run game San Francisco has won this season, which is tied with the Twins for the third most in the Majors.
It was also the Giants' 15th comeback win of the season and they improved to 2-29 when trailing after eight innings.
The Giants won for the first time in Lincecum's last 10 starts and snapped a six-game losing streak at the Coliseum in Oakland.
Jonny Gomes, who pinch-hit in the ninth inning of Friday's loss, is 5-for-5 with a home run lifetime against Bumgarner.