Run ssh-agent to cache login credentials for the session.

You enter the passphrase once (somehow), and after that, ssh-agent keeps your key in its memory and pulls it up whenever it is asked for it.

Usage within Bash

If you are not on windows you can use Bash as follows:

# This will put you in a bash shell which is spawned by ssh-agent. 
ssh-agent bash

After that you'll need to add your key:

# Add the standard key "identity" to the key manager. 
# or define a specific key:
# ssh-add /location/of/key
Either way, you'll be asked for a password, if any is required. Enter it. Done. It's now cached for subsequent calls.

Test this by logging into the server you put your public key on. If the key is correctly loaded in the ssh agent it wont ask you for your passphrase and log you in:

ssh -v host.with.pubkey

Used within Git-Bash

Git-Bash seems to start SSH-AGENT automatically (to verify).

Regarding Powershell

Getting SSH-AGENT to work within a Powershell context is important.