web-dev-qa-db-fra.com

Impossible de cloner le référentiel git distant avec EGit

J'essaie de cloner le référentiel git distant avec Egit via le protocole https. J'ai suivi ce tutoriel en ligne .

Lorsque j'insère l'URI: https: // nom_utilisateur @ hôte: port/repositorypath , mot de passe et cliquez sur SUIVANT, Ce message d'erreur s'affiche:

Cannot list the available branches.
Reason:
Exception caught during execution of ls-remote command.

Comment puis-je cloner ce repo?

27
a_mark

Il semble que Egit recherche un certificat SSL et refuse de fonctionner sans ce certificat. Une bonne solution pour résoudre le problème: Fenêtre → Préférences → Équipe → Git → Configuration → Nouvelle entrée → http.sslverify = false .

Cela devrai prendre soin de ça.

42
Daniel Lee

Ajouter .git à l'URL du référentiel a fonctionné pour moi.

17
Memet Olsen

Cela a fonctionné pour moi.

1) Dans Eclipse, Window -> Preferences -> General -> Network Connections -> SSH2 (ou tapez simplement SSH2 dans le filtre de recherche). Aller à l'onglet "Key Management". Cliquez sur "Generate RSA Key". Vous pouvez maintenant voir les informations de clé générées. Copiez cette clé générée. Laissez cette fenêtre ouverte et passez à l'étape 2.

2) Allez sur le compte GitHub.Cliquez sur votre profile -> Manage Account -> SSH keys -> Add key. Maintenant, collez la clé précédemment copiée, puis "Add key".

3) Revenez maintenant à la fenêtre Préférences Eclipse. Cliquez sur "Save Private Key" pour enregistrer la clé RSA dans un fichier. Par défaut, cela sera sauvegardé dans le répertoire Users\user_name\.ssh. La fourniture de la phrase secrète est facultative ici.

C'est tout, maintenant redémarrez Eclipse et clonez le référentiel.

5
Anuruddha

Pas utile dans votre cas, mais peut-être utile pour les autres: j'ai vu cette erreur se produire lors de la copie d'URI avec le nom de schéma git au lieu de quelque chose de plus commun Si l'URI commence par git://, essayez de le remplacer par http:// ou https://.

3
Michael Scheper

Je recevais cette erreur

Cannot list the available branches. 
Reason: 
Exception caught during execution of ls-remote command.

lorsque vous essayez avec SSH Key et peut-être une mauvaise URL pour bitbucket:
faux? ssh: //[email protected]/user/repository .git

Cela a fonctionné (branches listées) avec cette URL:
[email protected]: user/repository .git

3
Rock

J'ai aussi constaté que le répertoire SSH2 par défaut attribué dans 

Préférences> Général> Connexions réseau> SSH2> Général> SSH2

Accueil était C:\Utilisateurs\nom d'utilisateur\ssh à la place de la valeur par défaut C:\Utilisateurs\nom d'utilisateur\.ssh (avec un point initial pour "ssh")

L'utilisation du bouton Parcourir devrait vous aider à vous assurer que le bon répertoire est sélectionné.

Si cela vous concerne, il vous suffit alors de modifier le répertoire spécifié pour éliminer les messages d'erreur.

2

Dans mon cas, il s’agissait d’une solution en deux étapes sous Windows Vista.

J'utilise un certificat id_rsa. J'ai donc dû modifier l'emplacement dans Préférences> Général> Connexions réseau> SSH2> Général> SSH2 pour qu'il pointe vers .ssh au lieu de ssh, comme indiqué dans une solution antérieure. En plus de cela, je devais redonner un accès en lecture à Tout le monde (clic droit sur le fichier dans l'Explorateur Windows). J'avais précédemment refusé l'accès à Everybody car mon client ssh en ligne de commande avait refusé de travailler sans le faire.

J'espère que cela pourra aider.

1
Kurt

Si vous utilisez un système d'exploitation basé sur Debian, vous pouvez essayer le service ssh pour cloner le référentiel Git. 

Cela fonctionne bien pour moi.

Merci, Sengottuvel

1
Sengottuvel

lorsque vous générez la clé RSA ssh dans Eclipse dans: Windows> Préférences> Général> Réseau ..> SSH2> touche Onglet Gestion ..

VOUS DEVRIEZ sauvegarder comme clé privée puis continuer. Cela a résolu mon problème.

1

Ma réponse concerne la même exception, mais pour le clonage à l'aide du protocole SSH.

Je l'ai fait fonctionner dans un espace de travail, mais pas dans l'autre. Je pouvais également cloner le référentiel à partir de la ligne de commande, de sorte que le problème de configuration d'Eclipse était clair.

J'ai comparé les fichiers de configuration dans deux espaces de travail. La chose qui l'a corrigé était dans . metadata.plugins\org.Eclipse.core.runtime.settings\org.Eclipse.jsch.core.prefs

Il y avait un chemin d'accès au répertoire SSH: SSH2HOME = C \:\Users\username\ssh

Le bon chemin devrait avoir un point devant ssh: SSH2HOME = C \:\Users\nom d'utilisateur\.ssh

Aucune idée de la façon dont cela a été gâché, mais assurez-vous que le chemin menant à ssh home est correct.

1
Andrey Svirsky

Je pense que ce message d'erreur est en quelque sorte générique. Je suppose que le plug-in capte simplement une exception avec les commandes sous-jacentes (probablement ssh, car l'exécution échoue sur ls, qui est probablement la première commande après une connexion réussie) et affiche son propre message ("exécution de la commande ls") . Il est donc difficile de donner une réponse satisfaisante. J'ai essayé de répondre à Daniel que cela n'avait pas marché pour moi.

J'ai donc creusé plus profondément et j'ai essayé de cloner manuellement le référentiel via

git clone [email protected]_to_repo

et cela a fonctionné charmant.

Ce faisant, vous testez si votre méthode d'authentification correspond à vos attentes et si votre .ssh/config est également joli.

Sachant que je pouvais me connecter, j'ai supposé que l'erreur devait se situer quelque part dans Eclipse/EGit. Par exemple, je pensais que la méthode d'authentification dans l'assistant d'importation de projet était dérangeante. (Mettre un ssh: // devant le chemin pourrait interférer avec .ssh/config - de toute façon: nope.)
Ou peut-être que les paramètres SSH pour Eclipse étaient incorrects: Window --> Preferences --> General --> Network Connection --> SSH. OH, certaines de mes clés n'étaient pas listées. Ajout et redémarrage: même erreur -> frustration. Tous les autres paramètres avaient l'air bien. Je n'ai trouvé aucune bonne raison.

De plus, ma connexion n'est pas la meilleure et chaque tentative de connexion prend beaucoup de temps. Désespérément, j'ai revérifié Window --> Preferences --> Team --> Git --> et KABAMM! J'ai trouvé les paramètres auxquels je pensais au départ que cela pourrait être le fauteur de troubles.

Remote connection timeout (seconds): 30

Comme je l’ai dit au lieu d’être rapide comme l’éclair, je me sens plus comme un escargot et git-plugin abandonné avant même que la réponse du serveur ne puisse me parvenir. Du moins, c'est ce que je présume, car depuis que j'ai défini la valeur sur 120, j'ai plus de temps pour boire mon thé et à mon retour, toutes les branches sont prêtes à être clonées :)

1
nuala

J'ai suivi les étapes suivantes dans mon Eclipse lorsque j'avais un problème avec Auth Fail et une exception inattendue même après avoir défini la clé ssh avec Github de mylaptop. J'ai indiqué le chemin correct .ssh dans Windows >> Préférences ... >> Réseau .. >> SSH2. 

  • Accéder à l'interface Web de github 
  • Cliquez sur le référentiel 
  • Cliquez sur le lien hypertexte ssh juste en dessous de la "Copier l'URL du clone" 
  • Cliquez sur l'icône de copie. il montre [email protected]
  • Ouvrez le Eclipse (STS, GGTS, etc.), c'est avoir le plugin git
  • Ouvrez la perspective Git, puis cliquez avec le bouton droit de la souris sur le volet Référentiels Git qui affiche l'option "Coller le chemin du référentiel ou l'URI". 
  • Cela a cloné le repo avec succès.
0
Shamseer

J'ai résolu ce problème en modifiant le fournisseur actif en Direct dans les connexions réseau.

0
AAA

J'ai accidentellement découvert que le simple fait de changer de protocole en git pouvait le résoudre avec egit 1.2.

0
user1458290

J'ai eu le même problème lorsque je venais de générer ma nouvelle clé SSH2 dans Eclipse,MAISnon défini dans le champ des clés privées ... (Window --> Preferences --> General --> Network Connection --> SSH2 --> (General tab) --> Add private key...)

0
akasha

Redémarrer Eclipse a résolu ce problème pour moi.

0
user393274

C'était une erreur stupide de ma part que j'espère que personne d'autre ne devra rencontrer.

Dans le champ Host, j'ai inclus www au tout début, de sorte que le fichier complet URI ressemblait à quelque chose comme, https://www.github.com/user-name/repo-name.git

quand cela aurait dû être https://github.com/user-name/repo-name.git

0
Chris Gong