What I would like to do

How can I clone a git repository on my production server, without providing the account's password, and passphrase for the SSH key?

Perhaps what I'm asking is not possible. For the passphrase problem, I could generate the key without any passphrase, but not sure how secure that is.

What I currently do

I SSH to my server, with the account's username and password. I generate an SSH key on the server (which I then add to my Github account as an authenticated key). Each time I pull from the remote repo, I have to enter the passphrase.

The problem with this approach is that if I want someone else to pull the latest version of the repo on the production server, they will need the user and its password, along with the passphrase for the SSH key.

If you don't want to setup seperate accounts for every user, you can use a tool called Gitosis. In gitosis, there is an authorized_keys file that contains the public keys of everyone authorized to access the repository, and then everyone uses the 'git' user to do pushes and pulls.