Billy Wagner, who blew a save opportunity in Atlanta's 3-2, 11-inning loss to the Giants on Friday night, finished for his 27th save in 33 chances, striking out the side.
Hudson (13-5) allowed three hits, walked one and struck out six, improving to 4-0 with a sparkling 0.63 ERA in his last four starts. He is 3-0 with a 2.84 ERA in his last five starts against the Giants, dating to 2006.
The NL East-leading Braves have won three of four to improve to 38-15 at home, best in the majors.
San Francisco, which has dropped three of four, began the night one behind first-place San Diego in the NL West.
The Braves got all the runs they would need in the fourth against Matt Cain (9-9), who was 3-0 with 1.52 ERA in his previous four starts. Glaus' two-out hit with the bases loaded drove in Jason Heyward and Chipper Jones. Rick Ankiel followed with an RBI double.
Hudson got into a bit of a trouble in the seventh when he walked Aubrey Huff and hit Buster Posey with a pitch with two out. But he responded by getting Juan Uribe to bounce into a fielder's choice.
Hudson got pinch-hitter Travis Ishikawa to ground out with a runner on third to end the eighth.
Cain allowed six hits and walked two in five innings.
Hudson improved to 130-2 in 155 career starts when his team scores at least three runs while he's still in the game. He is 6-2 with a 1.73 ERA in eight starts since losing 4-2 at the Chicago White Sox on June 23.
Hudson got some help from his defense in the fourth. On Juan Uribe's hard grounder, shortstop Alex Gonzalez dove hard to his left and used his glove to scoop the ball to second baseman Omar Infante, who turned the double play.
Atlanta has dropped just one series this year, April 20-22 against Philadelphia, at Turner Field. The Braves can win this set with a victory Sunday.
NOTES: Atlanta rookie LHP Mike Minor, the seventh overall draft pick of 2009, will make his starting debut Monday at Houston. The Braves purchased his contract from Triple-A Gwinnett. RHP Kenshin Kawakami was optioned to Gwinnett. ... Posey, who grew up in Leesburg, Ga., ended a 0-for-9 slide in the series with his fifth-inning single.