git kann das richtige ssh nicht finden

Lesezeit: 3 Minuten

Benutzeravatar von Bill Lumbert
Bill Lumbert

Wenn ich versuche, eine Verbindung mit Git herzustellen, wird dieser Fehler angezeigt

$ git clone [email protected]:MyCompany/eagle.git --verbose                                         
Cloning into 'eagle'...                                                                        
FATAL ERROR: Couldn't agree a key exchange algorithm (available: [email protected],ecdh-sh
a2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521)                                                   
fatal: Could not read from remote repository.                                                        

Please make sure you have the correct access rights                                                  
and the repository exists.

Ich habe alle Schlüssel usw. eingerichtet und die Verbindung funktioniert gut, denn wenn ich das tue
ssh -v [email protected] Verbindung ist erfolgreich.

Was kann ich tun, um zu verstehen, was schief gelaufen ist und was korrigiert werden sollte?

Danke,

Für mich geschah dies, weil:

  1. Ich hatte Git für die Verwendung von PuTTY konfiguriert (dh GIT_SSH=C:\Program Files\PuTTY\plink.exe)
  2. Ich habe eine alte Version von PuTTY ausgeführt (zB 0.63)
  3. GitHub hat kürzlich schwache Kryptografiestandards entfernt.

Ich habe PuTTY 0.63 deinstalliert und heruntergeladen und installierte die neueste Version von PuTTY (zu diesem Zeitpunkt 0.70), und das löste das Problem für mich.

  • Ich habe auch mein PuTTY aktualisiert, aber nachdem ich auf einen anderen Schlüsseltyp umgestellt hatte (bei dem Versuch, einen zu finden, der in der Liste übereinstimmte, bekam ich den Fehler). Am Ende habe ich PuTTY nur aktualisiert, weil Pagaent die Schlüssel, die ich gerade erstellt hatte, nicht laden konnte!

    – Dash-Tom-Bang

    2. September 2018 um 19:54 Uhr

Wenn ssh -T [email protected] gibt dir das:

Hi <name>! You've successfully authenticated, but GitHub
does not provide shell access.

Nachricht, das bedeutet, dass Ihr SSH-Setup funktioniert. Wenn Sie Folgendes erhalten:

FATAL ERROR: Couldn't agree a key exchange algorithm ...

das bedeutet Ihr ssh-Setup ist nicht Arbeiten. Hier gibt es eindeutig einen Widerspruch, und der wahrscheinlichste Schuldige ist, dass Sie zwei verschiedene haben ssh Befehle installiert: einer, den Sie verwenden, der funktioniert, und ein anderer, den Git verwendet, der nicht funktioniert.

Diese Antwort auf Git mit SSH unter Windows hat viele Upvotes. Ich vermeide Windows, also habe ich keine Ahnung, ob das hilft. (Ich weiß nicht einmal, ob Sie Windows verwenden, da Sie es nicht erwähnt haben.)

Beachten Sie, dass Git-Version 2.3.0 hinzugefügt GIT_SSH_COMMANDUnd Git-Version 2.10.0 hinzugefügt core.sshCommand um einen Wert festzulegen GIT_SSH_COMMAND. Seit damals, Git Version 2.13.0 hat einige neue Tricks für den Umgang mit Problemen gelernt, die mit Variationen von ssh verbunden sind, die unterschiedliche Optionsbuchstaben erfordern. In allen Fällen ist es wichtig, herauszufinden, welches ssh-Git ausgeführt wird, und sicherzustellen, dass eines ausgeführt wird, das tatsächlich funktioniert. Sehen die Git-Dokumentation der obersten Ebene für eine Beschreibung aller Optionsvariablen und was sie tun. Der Link hier führt zu einer Webseite, die möglicherweise nicht mit Ihrer eigenen Git-Version übereinstimmt. Erwägen Sie daher die Ausführung git --help git um diese Version zu lesen, wenn Ihr Git sehr alt ist.

Benutzeravatar von Bill Lumbert
Bill Lumbert

das Problem lag in GIT_SSH. Diese Variable wurde zuvor von Putty gesetzt. Ich habe diese env-Variable gelöscht und das Problem wurde gelöst

Dies kann mit GitHub zu tun haben schwache Krypto entfernen. Dies geschah am 22. Februar 2018.

Benutzeravatar von Ambroise Rabier
Ambroise Rabier

Ich habe SourceTree, dann Putty und dann open-ssh verwendet. Hat tatsächlich ein Durcheinander gemacht und beim Überprüfen den mit SourceTree installierten Putty verwendet GIT_SSH env-Variablenwert. Das Löschen dieser env-Variablen war erforderlich, um open-ssh zu verwenden. (nicht mit Kitt so)

Für Neulinge verwende ich dieses Snippet, um mich mit open-ssh bei GitHub “anzumelden”:
eval $(ssh-agent -s) && ssh-add ~/.ssh/mySHHKey

BEARBEITEN: Egal, ich habe mich gestern erfolgreich verbunden, aber jetzt funktioniert es nicht mehr … In der Zwischenzeit Festzug mit Putty verwenden.

1445680cookie-checkgit kann das richtige ssh nicht finden

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy