The person spoke on condition of anonymity Wednesday because the team had not announced the move.
Freeman was cut by the Tampa Bay Buccaneers in October after a messy split. He signed with Minnesota four days later, but played just one game for the Vikings.
That happened to come against the Giants, when he went 20 for 53 for 190 yards and one interception in the ugly 23-7 Monday night loss.
The 17th pick in the 2009 draft, Freeman started 59 games for the Bucs over four-plus seasons before the relationship soured. He threw for 3,451 yards and 25 touchdowns with six interceptions in 2010.
Freeman would compete to back up Eli Manning with the Giants.
AP NFL website: www.pro32.ap.org