Agent-based authentication requires that the SSH process has access to the $SSH_AUTH_SOCK environment variable, but that variable won't be set when run via the crontab. You may want to consider switching to a passphrase-less keypair or an anonymous authentication method.
If that's not an option you could write the contents of the $SSH_AUTH_SOCK environment variable (possibly also $SSH_AGENT_PID) to a local file that you can read from your crontab-run script and set the variables so that they're available to SSH.
One last option is to drop the crontab entry and manually start up a shell script that runs as a daemon and periodically performs the pull.