The rebuilding Braves received three minor league prospects -- right-hander Mike Foltynewicz, third baseman Rio Ruiz and right-hander Andrew Thurman -- in the trade, which also sent right-handed minor leaguer James Hoyt to Houston.
Gattis passed a physical Wednesday to complete the deal, which the Braves announced in a news release later in the evening.
Gattis, 28, has 43 home runs in just 213 career games with the Braves. He burst onto the scene as a relative unknown in 2013 and became one of the most popular players among Atlanta's fan base.
He hit .263 with 22 homers and 52 RBIs for the Braves last season.
The right-handed Gattis played catcher, first base and left field for Atlanta. With his addition, the Astros now have five catchers on the 40-man roster. They added Hank Conger in November in a trade with the Los Angeles Angels and already had Jason Castro, Carlos Corporan and Max Stassi on the roster.
Castro has been Houston's everyday catcher for the past three seasons but struggled at the plate last season, batting just .222 a year after earning an All-Star spot by hitting a career-best .276.
On offense, Gattis will join an emerging Astros lineup that already features All-Star second baseman Jose Altuve, promising outfielder George Springer and slugger Chris Carter, who tied for second in the majors with 37 homers last season.
Carter agreed to a one-year deal for $4,175,000 on Wednesday. He spent 118 games at designated hitter and started 14 games at first base and six in the outfield.
"I'm just thrilled to be an Astro and to have this deal done so I can concentrate on the upcoming season and building on my success last year," said Carter, who made just $510,000 last season.
The 28-year-old hit .227 with 88 RBIs, which also were the most of his career and led the Astros. It was his second season in Houston after a trade from Oakland.
— Atlanta Braves (@Braves) January 15, 2015
Foltynewicz was a first-round pick by the Astros in 2010 and made 16 relief appearances as a rookie last season. The 23-year-old has a fastball that has routinely been clocked at more than 100 mph, but it didn't translate to success last season in his limited work in Houston, where he posted a 5.30 ERA. He spent most of the season with Triple-A Oklahoma City, where he struck out 102 batters in 21 games with 18 starts.
Ruiz, 20, was a fourth-round pick in 2012. He hit .293 with 37 doubles and 77 RBIs for Class A Advanced Lancaster last season.
Thurman went 7-9 with a 5.38 ERA in 26 games, with 20 starts for Class A Quad Cities in 2014.
The Associated Press contributed to this report.