The Tigers, in announcing the deal Friday, also said Sheffield had agreed to a 2-year contract extension. His new deal runs through the 2009 season.
The Yankees this month picked up a $13 million option on Sheffield so they could trade him, rather than lose him to free agency. As a result, New York acquires three right-handed pitchers -- Humberto Sanchez, Kevin Whelan and Anthony Claggett.
"We have been able to add one of the biggest bats in baseball," said Tigers Manager Jim Leyland. "I have a great relationship with Gary Sheffield and I have the utmost respect for him. I'm happy to add a bat of this magnitude and that he'll be a Tiger."
A nine-time All-Star selection, Sheffield is seventh among active players with 455 home runs and sixth with 1,501 runs batted in. He is a career .297 hitter in 2,229 games over 19 seasons with Milwaukee, San Diego, Florida, the Los Angeles Dodgers, Atlanta and the Yankees.
He appeared in just 39 games in 2006 because of a wrist injury.
Ohio crash that killed two caught on camera [VIDEO]
Workers accuse National Zoo of animal mismanagement