SAN FRANCISCO (AP) -- Brian McCann spent the first month of the season in Florida rehabilitating his surgically repaired right shoulder. He hardly watched the Atlanta Braves play.
Now that he's back, a big void has been filled.
McCann hit a two-run homer and an RBI single in his third game this season since coming off the disabled list, and the Braves beat the San Francisco Giants 6-3 on Thursday night to begin a four-game series between NL division leaders.
''I just know we're in first place, we're playing great baseball,'' McCann said. ''I'm just glad to be back and be a part of the team. That's my job - to be here, work the ABs and get hits.''
Freddie Freeman and B.J. Upton both drove in a run to help back Julio Teheran (2-0), who pitched seven efficient innings in his 10th career start after his last scheduled outing was rained out Saturday against the Mets. Craig Kimbrel earned his 100th career save, becoming the second-youngest pitcher to reach the milestone.
Buster Posey hit a two-run homer and an RBI single, but the Giants were done in by the fifth inning when the Braves batted around.
The Giants (20-15) fell into a first-place tie in the NL West with Arizona.
Posey put the Giants ahead with a drive into the stands in left-center on a 3-2 pitch from Teheran in the third. The reigning NL MVP and batting champion had a run-scoring single in the first.
But the Braves jumped on Ryan Vogelsong (1-3) in the fifth.
Jordan Schafer led off with a triple and scored the tying run on Andrelton Simmons' RBI groundout moments later. Justin Upton followed with a triple of his own, and Freeman's single gave Atlanta a 4-3 lead.
''With Mac in there, it's a good lineup,'' manager Fredi Gonzalez said.
Vogelsong walked Dan Uggla and his night was done with one out in the fifth. Jose Mijares relieved and the Braves added a run on McCann's RBI infield single.
Teheran received all the run support he needed. Eric O'Flaherty pitched a scoreless eighth before Kimbrel bounced back from a blown save Tuesday at Cincinnati for his 11th save in 14 chances.
The Braves said at 24 years, 346 days, he became the second-youngest pitcher behind Francisco Rodriguez (24 years, 246 days) to reach 100 saves, according to information from the Elias Sports Bureau.
''It's nice to get this milestone,'' Kimbrel said. ''Hopefully I can rack up quite a few more.''
Teheran allowed three runs on seven hits, struck out three and didn't walk a batter for the second time this season. He returned to his former changeup grip, and trusted the pitch to keep the Giants guessing.
''It worked,'' he said. ''Yesterday I told myself I wanted to throw that pitch.''
Vogelsong's winless stretch reached five starts since his lone victory April 11 against the Chicago Cubs at Wrigley Field.
The right-hander struck out the side in order in the first on 14 pitches, but didn't have another clean inning.
''I came through it after 13 years, I came through it after August 2011, I came through after August and September 2012, and I'll come through it again this year,'' Vogelsong said.
Vogelsong struck out a season-high seven but failed to make it out of the fifth inning for the second straight start. The 35-year-old pitcher has allowed 18 earned runs over his past 14 innings, raising his ERA from 5.68 to 7.78. San Francisco's starters have only one win in their last 16 games.
''I thought he was throwing well. It was evident by the strikeouts he was getting,'' Giants manager Bruce Bochy said. ''I do think the pitches caught up with him a little bit. He worked pretty hard.''
McCann, a six-time All-Star catcher who returned from the disabled list Monday at Cincinnati for his first action since surgery on his throwing shoulder last October, finished with three hits after taking Wednesday off.
His home run was Atlanta's NL-leading 48th. He already feels in a nice groove with his swing.
''To be where I'm at, honestly, if you'd told me this a month ago that I'd be feeling this good, I wouldn't have believed you,'' he said. ''This thing went through its ups and downs, and I was able to make some huge gains when I was down in Florida.''
Gonzalez said Gerald Laird would catch Saturday afternoon to spell McCann following a night game Friday.
Gonzalez will be away from the club Friday and Saturday to attend his daughter Gigi's college graduation at Georgia Southern.
Giants center fielder and leadoff man Angel Pagan returned after missing three of the previous four games with a strained groin that was initially thought to be a hamstring injury. He sat out Sunday and Monday, played Tuesday, then was held out of the lineup Wednesday as a precaution.
NOTES: Giants reliever Santiago Casilla, who came out in the eighth inning Wednesday against the Phillies, has a cyst in his knee that he also dealt with last season. ... Vogelsong is tied with Friday night starter Matt Cain for the team lead with nine homers allowed. ... The clubs met for the first of seven games in 2013. ... Atlanta RF Jason Heyward (appendectomy) began his minor league rehab assignment, going 0 for 5 with a walk for Triple-A Gwinnett.