117 votes

Passer des options ssh à git clone

J'essaie d'exécuter git clone sans ssh en vérifiant la clé de l'hôte du référentiel. Je peux le faire depuis ssh comme ça :

 ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no user@host

Existe-t-il un moyen de transmettre les mêmes options ssh à la commande git clone ?

Modifier : il y a une restriction selon laquelle je ne peux pas modifier ~/.ssh/config ou tout autre fichier sur cette machine.

181voto

Boris Points 979

Le git 2.3 récemment publié prend en charge une nouvelle variable "GIT_SSH_COMMAND" qui peut être utilisée pour définir une commande AVEC des paramètres.

 GIT_SSH_COMMAND="ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no" git clone user@host

$GIT_SSH_COMMAND a priorité sur $GIT_SSH , et est interprété par le shell, ce qui permet d'ajouter des arguments supplémentaires inclus.

22voto

kenorb Points 2464

Voici un exemple délicat de la façon de passer les arguments ssh en utilisant la variable GIT_SSH :

 $ echo 'ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no $*' > ssh
$ chmod +x ssh
$ GIT_TRACE=1 GIT_SSH="$PWD/ssh" git clone user@host

Remarque : les lignes ci-dessus sont des lignes de commande de terminal que vous devez coller dans votre terminal. Il va créer un fichier ssh , le rendre exécutable et l'exécuter.

Si vous souhaitez passer l'option de clé privée, veuillez vérifier Comment indiquer à git quelle clé privée utiliser ? .

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X