SAN FRANCISCO -- Brandon Hicks made the team in spring training when it became obvious San Francisco's regular second baseman, Marco Scutaro, would not be ready to start the season. He's made the most of his opportunity.
"It felt awesome," said Hicks, who hit a game-ending homer for the Oakland Athletics two years ago. "You always remember these."
Hicks signed a minor-league deal with the Giants last November and made the club when Scutaro's lower back strain remained a problem.
"He had a tremendous spring," Giants manager Bruce Bochy said. "With Scutaro down we needed help there and he's been getting big hits for us. Two outs in the ninth; it doesn't get any better than that."
Buster Posey led off with a single and pinch runner Gregor Blanco went to second on Juan Perez's sacrifice bunt. Pablo Sandoval struck out and Brandon Crawford, who drove in the Giants first run, was walked intentionally.
Hicks took a ball and then hit a towering fly into the left field bleachers, giving the sellout crowd of 41,530 something to celebrate.
"I wanted to be ready for it when and if he threw a fastball," Hicks said. "He's a hard thrower and I was able to get a pitch up in the zone."
Sergio Romo (2-0) pitched a scoreless inning to get the victory. Cory Allen (2-1), who allowed his first run in 12 games, took the loss.
"I was not trying to elevate a fastball," Allen said. "I was trying to throw a good fastball down and way. It was already a bad count and he was probably looking for it. He got a pitch out over the plate and put the barrel to it."
Yan Gomes hit a game-tying home run in the eighth inning for the Indians, who were swept for the first time since last August.
Ryan Vogelsong found a flaw in his mechanics after a disastrous start in his last outing. The fix has him looking forward with a renewed sense of confidence.
"It was a pretty major flaw, in my legs, and I just tried to fix it," said Vogelsong, who was pulled with one out in the second inning of last Monday's 8-2 loss at the Colorado Rockies. "The other night was so bad, you just look to see if anything sticks out. I was out so fast there wasn't a whole lot to digest."
Vogelsong threw seven shutout innings, his longest start of the season. He gave up two hits, both to Michael Bourn, walked two and struck out six.
"He did a great job of getting back into the count," Bochy said. "He never gave in and threw some great pitches when he had to."
Indians' starter Danny Salazar gave up one run on five hits in a season-best seven innings. He walked one and struck out eight.
"I was trying to bring the same guy who was up here last year," Salazar said. "I wasn't thinking about my delivery or anything else. I was thinking, just keep the ball down."
Vogelsong retired the final 12 batters he faced while Salazar set down nine of the last 10 he faced.
The Giants took a 1-0 lead in the fourth. With two outs, Pablo Sandoval and Brandon Crawford hit back-to-back doubles.
The Indians did not get a runner past second until Gomes hit his third home run of the year, a solo shot into the left field bleachers on a 1-2 pitch from Santiago Casilla.
The Giants sold out a NL record 258th straight game, surpassing the Philadelphia Phillies, who sold out 257 straight between 2009-12.
RHP Justin Masterson (0-0, 4.50) will start Cleveland's series opener in Anaheim on Monday against the Los Angeles Angels. He's 4-0 in 12 games, 9 starts, against the Angels. ... LHP Madison Bumgarner (2-2, 3.14) starts for the Giants in their series opener against the San Diego Padres on Monday night. He's 6-3 with a 3.36 ERA in 16 starts against the Padres. ... Sandoval ended an 0 for 42 streak when hitting with two strikes when he singled in the seventh. ... Gomes' homer ended a 19-inning scoreless streak by the Giants bullpen at home. ... Salazar is 0-5 in nine career starts on the road. . The Indians 4-5-6 hitters went 0 for 29 in the series.