Reggie Smith's two-run homer with one out in the 12th inning gave San Francisco its 10th straight victory today, an 8-6 decision over Atlanta. It was the Braves' ninth straight loss.

The winning streak is the longest for the Giants since they won 12 in a row from April 30 to May 13, 1966. Since June 27, their record is 28-13, best in the major leagues.

Joe Morgan opened the 12th with a walk off losing reliever Carlos Diaz (2-2) and was forced at second on Jack Clark's grounder. Smith followed with his 12th homer of the year, over the screen in left center.

Fred Breining (7-4) pitched four shutout innings to earn the victory.

"We're on a roll, and we've got to see how long we can keep it up, especially since we're going into Los Angeles this weekend," said pitcher Jim Barr. The Giants and Dodgers will play a four-game series.

"But we can't think that way," he added, admonishing himself for departing from the usual one-game-at-a-time thinking.

The Giants moved into fourth place on June 5. They were 32-42 on June 27, and were 14 games out of first place in the National League West two weeks ago. But San Francisco moved within four games of the lead today with its 16th victory in 20 games.

Singles by Morgan and Clark and a double-play grounder by Smith in the seventh tied the score at 6 off Gene Garber, Atlanta's third pitcher.

The Braves had a 5-1 lead in the fourth, but two errors and a passed ball helped the Giants score four unearned runs. The Giants began closing the gap in the fourth, when singles by Smith and Jeff Leonard and an infield out by Darrell Evans cut the lead to 5-2.

In the sixth, second baseman Glenn Hubbard dropped an easy pop-up and catcher Bruce Benedict had a passed ball as the Giants tied the score at 5.