7 votes

Problèmes d'Egit ssh

J'ai essayé de faire coopérer gitHub et Egit, sans succès. J'ai installé le paquet de logiciels de github et créé une clé SSH de cette façon, mais Egit ne m'invite pas à saisir la phrase de passe et me donne cette erreur :

Cannot get remote repository refs.
Reason: ssh://git@github.com:22: passphrase for C:\Documents and Settings\User\.ssh\id_rsa

J'ai ces paramètres dans le menu "push" :

URI: ssh://git@github.com/YoungMaker/<projectName>.git
host: github.com
Repository path: /YoungMaker/<projectName>.git
protocol: SSH
port <BLANK>
User: git
password <blank>

J'ai également essayé la variable d'environnement GIT_SSH, et l'ai définie comme suit C:\Documents et paramètres \User.ssh ainsi que plink.exe (je ne sais pas ce que c'est (clairement un .exe)).

Après avoir essayé de pousser depuis l'interface graphique de gitHub, j'ai obtenu cette erreur. C'est assez étrange parce que j'ai le C:\Documents et paramètres \User.ssh avec un fichier de configuration et une clé id_rsa dans celui-ci.

Pushing to git@github.com:YoungMaker/GitTester.git
error: cannot spawn C:\Documents and Settings\User\.ssh: No such file or directory
fatal: unable to fork

6voto

Roger Points 594

Vieille question, mais pour référence future :

Assurez-vous que vous avez configuration d'une télécommande push . Ça a marché pour moi quand j'ai eu les deux Impossible d'obtenir les références du référentiel distant -problèmes ("... Passphrase for..." et "Auth fail" dans la boîte de dialogue "Push...").

A condition que vous l'ayez déjà fait :

  1. Configurer vos clés SSH avec Github (Fenêtre > Préférences > Général > Connexions réseau > SSH2)

  2. Configurez votre dépôt local (vous pouvez suivre les instructions suivantes esta guía pour cela)

  3. Création d'un dépôt Github ( même guide )

... voici comment faire :

  • Allez à la Vue des dépôts Git (Window > Show View > Other > Git Repositories)
  • Développez votre référentiel et Cliquez à droite sur Remotes --> "Créer une télécommande"
  • "Nom distant" : origine, "Configure push" : coché --> cliquez sur "OK".
  • Cliquez sur le bouton "Change..." bouton
  • Collez votre URI git et sélectionner le protocole ssh --> cliquez sur "Terminer"
  • Maintenant, Cliquez sur "Enregistrer et pousser". et MAINTENANT vous devriez obtenir une demande de mot de passe --> entrez la phrase de passe de la clé publique ici (à condition que vous AYEZ (et vous devriez) configurer une phrase de passe pour votre clé publique) --> cliquez sur "OK".
  • Vous devriez maintenant obtenir une fenêtre de confirmation indiquant "Pushed to VotreDépôt - origine" --> cliquez sur "OK".
  • Pousser vers l'amont mais cette fois-ci utiliser "Référentiel distant configuré comme dépôt Git de destination
  • Allez vous chercher une tasse de café bien méritée !

2voto

VonC Points 414372

La phrase de passe est nécessaire si vous avez créé une clé privée protégée par une phrase de passe, comme décrit dans " GitHub : Phrase de passe de la clé SSH ".
Mais cela signifie que vous avez besoin d'un agent SSH pour fournir cette phrase de passe pour vous.

Si Egit n'en demande pas un lors de la poussée, cela peut signifier que :

  • votre clé SSH n'était pas protégée par une phrase de passe
  • votre clé SSH n'est pas accessible d'une manière ou d'une autre (mauvais chemin, ou mauvaise protection sur ce chemin)

Voir aussi Le tutoriel de Vogella :

Egit ssh uri

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