web-dev-qa-db-fra.com

Comment installer / configurer TortoiseGit pour fonctionner avec GitHub

Je viens d'installer Git pour Windows , et de créer ma clé SSH en utilisant SSH via Cygwin. Il semble fonctionner à partir de la ligne de commande et de l'interface graphique Git pour Windows, mais maintenant je veux utiliser TortoiseGit. TortoiseGit utilise un client SSH de type PuTTY par défaut mais apparemment GitHub accepte uniquement (ouvert) SSH, et je ne sais pas vraiment comment procéder. Je vais faire une installation propre de TortoiseGit, j'ai déjà installé Cygwin et Git pour Windows.

31
Mr. Boy

Si vous cherchez à modifier une installation TortoiseGit existante pour utiliser PuTTY plutôt que OpenSSH , faites simplement un clic droit, -> TortoiseGit -> Paramètres -> Réseau , puis remplacez "ssh.exe" par "tortoiseplink.exe". À partir de là, faire un Push/Pull devrait utiliser Pageant (et toutes les clés que vous y avez installées) si vous l'avez également en cours d'exécution.

39
zcrar70

Le moyen le plus simple serait d'installer d'abord TortoiseGit puis msysgit avec le paramètre SSH client sur TortoisePLink. Utilisez le générateur TortoiseGit Puttykey pour créer une nouvelle paire de clés, ajoutez votre clé publique à GitHub.

Clonez/créez un nouveau référentiel. Dans les paramètres du référentiel Tortoise, définissez votre nom complet et votre adresse e-mail. Ensuite, dans le menu distant sous le menu de configuration Git, entrez l'URL de votre clone et sélectionnez votre clé PuTTY. GitHub fonctionne très bien avec les clés PuTTY. J'ai des amis qui l'utilisent et je l'ai utilisé moi aussi.

9
Learath2

1) Cygwin

Utilisez l'approche décrite dans l'article tilisation des phrases secrètes de clé SSH.

Un mot de passe ne vous sera demandé qu'une seule fois au démarrage de la session Cygwin. !!! Avant de quitter la session Cygwin, n'oubliez pas de tuer le processus ssh-agent (utilisez ps pour trouver le processus PID et kill -9).

Nous utilisons une approche distincte pour Cygwin, car Cygwin, pour une raison quelconque, ne voit pas les processus démarrés en externe dans un environnement Windows.

2, 3) MsysGit, TortoiseGit

Lien utile: http://dogbiscuit.org/mdub/weblog/Tech/WindowsSshAgent

Installez MsysGit. Installez TortoiseGit (cochez openssh au lieu de plink pendant l'installation). !!! Vérifiez les variables système. S'il y a une variable GIT_SSH présente - supprimez-la.

Allez dans TortoiseGit -> Paramètres -> Général .

Définissez le chemin d'accès Git EXE sur <MsysGitHome>/bin. Définissez le chemin d'accès externe DLL sur <MsysGitHome>/mingw/bin.

Allez dans TortoiseGit -> Paramètres -> Réseau . Définissez la propriété du client SSH sur <MsysGitHome> /bin/ssh.exe

Définissez la variable système SSH_AUTH_SOCKS = C:\temp.ssh-socket

Démarrez cmd.exe et exécutez les commandes suivantes (depuis que nous avons installé MsysGit, toutes les commandes suivantes sont accessibles dans cmd - <MsysGit>/bin est ajouté à la variable PATH système):

# The following command is required to execute for avoiding an address already bind message when ssh-agen is not started yet but .ssh-socket exists after previous agent session
rm "%SSH_AUTH_SOCK%"

# Starting ssh-agent
ssh-agent -a "%SSH_AUTH_SOCK%"

# Adding our openssh key
ssh-add "%USERPROFILE%\.ssh\id_rsa"

# Type password for your key

C'est ça. A partir de ce moment, vous pouvez exécuter git Push, git pull de TortoiseGit et MsysGit sans mot de passe d'invite.

Lorsque ssh-agent n'est plus requis, vous pouvez le tuer via Windows Task Manager .

3
ydrozhdzhal