Hours earlier, the Houston Astros had released Hernandez, baseball's active leader in starts and innings, from his minor-league contract.
Astros general manager Jeff Luhnow made the announcement Friday. The 37-year-old Hernandez made five starts for the Astros in spring training after signing with the club on Jan. 31.
The Astros would have been Hernandez's eighth different team in 17 seasons, but now the Braves will fit that bill. He has started 474 games and has pitched 3,121 2/3 innings. He was the Opening Day starter for Washington last season and went 8-13 with a 4.47 ERA in 29 starts.
Hernandez will fill a role as a spot starter and long reliever in Atlanta, a source told ESPN.com's Jerry Crasnick. With Tim Hudson out until May because of back surgery, the Atlanta rotation currently consists of Tommy Hanson, Jair Jurrjens, Brandon Beachy and Mike Minor in the top four spots. Randall Delgado and Julio Teheran have been competing for the No. 5 spot in spring training.
He can earn an a maximum of $750,000 in performance bonuses. He would get $125,000 each for 110, 120, 130, 140, 150 and 160 innings, and $50,000 each for 35, 40, 45, 50, 55 and 60 games.
Atlanta general manager Frank Wren is familiar with Hernandez going back to their days with the Florida Marlins. Wren was working in the Marlins' front office in 1997 when Hernandez finished second in the NL Rookie of the Year race and went 4-0 in the playoffs to help Florida win its first World Championship.
The Cuban defector has pitched at least 200 innings in 10 major-league seasons and led the NL in innings pitched between 2003-05.
He has spent time with San Francisco, Montreal, Arizona, Minnesota, Colorado and the New York Mets before re-signing with the Expos/Nationals in 2009.
Hernandez has a career record of 174-176 with a 4.39 ERA. He's pitched in 12 playoff games with a 7-3 record and 3.97 ERA.
Information from ESPN.com's Jerry Crasnick and The Associated Press was used in this report.