Er is geen direct manier om git
te vertellen welke prive-sleutel te gebruiken, omdat het afhankelijk is van ssh
voor repository authenticatie. Er zijn echter nog een paar manieren om je doel te bereiken:
Optie 1: ssh-agent
Je kunt ssh-agent
gebruiken om je private sleutel tijdelijk te autoriseren.
Bijvoorbeeld:
$ ssh-agent sh -c 'ssh-add ~/.ssh/id_rsa; git fetch user@host'
Optie 2: GIT_SSH_COMMAND
Pas de ssh argumenten aan door de GIT_SSH_COMMAND
omgevingsvariabele (Git 2.3.0+) te gebruiken.
bijvoorbeeld:
$ GIT_SSH_COMMAND='ssh -i ~/.ssh/id_rsa -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no' \
git clone user@host
Je kan dit alles op één regel typen - negeer $
en laat de Er is **geen _direct_ manier** om
gitte vertellen welke prive-sleutel te gebruiken, omdat het afhankelijk is van
ssh` voor repository authenticatie. Er zijn echter nog een paar manieren om je doel te bereiken:
Optie 1: ssh-agent
Je kunt ssh-agent
gebruiken om je private sleutel tijdelijk te autoriseren.
Bijvoorbeeld:
$ ssh-agent sh -c 'ssh-add ~/.ssh/id_rsa; git fetch user@host'
Optie 2: GIT_SSH_COMMAND
Pas de ssh argumenten aan door de GIT_SSH_COMMAND
omgevingsvariabele (Git 2.3.0+) te gebruiken.
bijvoorbeeld:
$ GIT_SSH_COMMAND='ssh -i ~/.ssh/id_rsa -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no' \
git clone user@host
Je kan dit alles op één regel typen - negeer $
en laat de weg.
Optie 3: GIT_SSH
Geef de ssh argumenten door gebruik te maken van de GIT_SSH
omgevingsvariabele om alternatieve ssh
binair te specificeren.
Bijvoorbeeld:
$ echo 'ssh -i ~/.ssh/id_rsa -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no $*' > ssh
$ chmod +x ssh
$ GIT_TRACE=1 GIT_SSH='./ssh' git clone user@host
Opmerking: De bovenstaande regels zijn shell (terminal) commandoregels die je in je terminal moet plakken. Ze maken een bestand aan met de naam ssh
, maken het uitvoerbaar en voeren het (indirect) uit.
Opmerking: GIT_SSH
is beschikbaar sinds v0.99.4 (2005).
Optie 4: ~/.ssh/config
Gebruik het ~/.ssh/config
-bestand zoals voorgesteld in andere antwoorden om de locatie van uw privésleutel op te geven, bv.
Host github.com
User git
Hostname github.com
IdentityFile ~/.ssh/id_rsa