Three other pitchers -- Andrew Cashner, Joe Wieland and Cory Luebke -- could rejoin the team sometime around midseason when reinstated from the disabled list.
Garcia, 36, was 7-6 with a 5.20 ERA last season in 30 games (17 starts) with the Yankees. He became a free agent following the season. Garcia had something akin to a career revival with the Yankees in 2011, winning 12 games to go with a 3.62 ERA in 26 appearances.
In 14 seasons in the big leagues, Garcia is 152-101 with a 4.15 ERA in stints with the Mariners, White Sox, Yankees, Phillies and Tigers.
He will earn $1.3 million and could earn another $1.25 million in incentives.
"He's had a great career and has pitched pretty well the last two years in a challenging environment in New York," said Padres general manager Josh Byrnes. "We feel like he'll add some depth and we got very good reviews on his makeup. He knows how to pitch."
Stauffer, who was the Padres' Opening Day starter in 2011, had season-ending surgery on Aug. 31 of last season to repair the flexor tendon in his right elbow. He made just one appearance all of last season -- a five-inning stint against the Nationals in May.
Stauffer, 30, said last week that he's throwing from upwards of 75 feet at this point. He said that he's about two weeks behind his typical throwing program. There's a chance he might not be ready for the start of the regular season, though he's certain he won't be far behind.
"In my mind, I'm close to being ready," Stauffer said.
Lopez, 29, originally signed a Minor League contract with the Padres in December 2007. He appeared in four games with the team in '09 before he was selected off waivers by the Mets in June of that year.
Lopez spent the past two seasons pitching for the Mexico City Red Devils, who are owned by an investor in the Padres' ownership group -- Alfredo Harp Helú.
Lopez was 6-7 with a 6.44 ERA in 16 starts for the Red Devils.
Pitchers and catchers report to the team's Spring Training facility Feb. 12. Position players report Feb. 15, with the first full-squad workout set for the following day. The first spring game is set for Feb. 22, when the Padres face the Mariners in their annual charity game at the Peoria Sports Complex.