Lefty Taylor Rogers agreed to a $33 million, three-year contract with the Giants, who designated infielder Tommy La Stella for assignment.