The following should do the trick
GIT_SSH_COMMAND="ssh -i c/tmp/my_id_rsa" git push
This allows you to add parameters to the ssh execution without the need of an additional script file.
Depending on your script you can fine tune this by defining and exporting the environment variable GIT_SSH_COMMAND
before the actual execution of git or use if
etc. to only use it when you are communicating with tingle
In your config file you mention user and host, too. This should already be part of the git remote definition. If you still need to override this you could add these to the above command definition.
One remark the command above is not checking which host actually is invoked by git. But if you are desperate you could try to build a inline shell script with this "trick" that checks the hostname and mimics the config file host restriction ;-).
As a starter that would maybe look like this:
GIT_SSH_COMMAND="bash -c \"if [ \\\"$1\\\" = \\\"user@host\\\" ] ; then ssh -i c/tmp/my_id_rsa $@ ; else ssh $@ ; fi \" -- " git push
I didn't test this and be aware of quoting ;-). It's for the desperate.