Un'altra opzione fatta secondo diverse chiavi è git config core.sshCommand
con git 2.10+ (Q3 2016)
Questa è un'alternativa alla variabile ambiente descritto in Boris s' answer)
Vedere commit 3c8ede3 (26 Giu 2016) di Nguyễn Thái Ngọc Duy (pclouds
).
(fusa per Junio C Hamano -- gitster
-- in commit dc21164 19 Lug 2016)
Una nuova variabile di configurazione core.sshCommand
è stato aggiunto alla specificare quale valore per GIT_SSH_COMMAND da usare per ogni repository.
Simile a $GIT_ASKPASS
o $GIT_PROXY_COMMAND
, leggiamo anche da file di configurazione prima poi ripiegare a $GIT_SSH_COMMAND
.
Ciò è utile per selezionare diverse chiavi private destinati alla stesso host (es github)
core.sshCommand:
Se questa variabile è impostata, git fetch
e git push
utilizzerà il comando specificato anziché ssh
quando devono connettersi a un sistema remoto.
Il comando è nella stessa forma della variabile di ambiente GIT_SSH_COMMAND
ed è sovrascritto quando la variabile di ambiente è impostata.
Significa che il git clone
possono essere:
cd /path/to/my/repo
git config core.sshCommand 'ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no'
# later on
git clone host:repo.git
Se si desidera applicare che per tutti pronti contro termine, come user1300959 aggiunge in the comments, si usa una configurazione globale
git config --global core.sshCommand ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no
Quello che provi a fare è molto rischioso e probabilmente non dovresti farlo. Disabilitare la verifica se l'identità del server SSH remoto è una cattiva idea nella maggior parte delle situazioni. Disabilita in modo efficace tutta la sicurezza ottenuta tramite l'uso di SSH e ti apri agli attacchi man-in-the-middle. – aef