Wie kann ich SSH-Remote mit GitHub Desktop verwenden?

Lesezeit: 3 Minuten

Benutzer-Avatar
MAXIMALE KRAFT

Ich verwende GitHub Desktop unter Windows 10. Ich habe ursprünglich ein Repo mit seiner HTTPS-URL geklont, aber jetzt hat unsere Organisation darauf hingewiesen, dass wir stattdessen die SSH-URL verwenden müssen. Also habe ich das umgestellt.

Ich habe auch den Inhalt meines öffentlichen SSH-Schlüssels kopiert (id_rsa.pub) in meinem GitHub-Konto. Mein SSH-Schlüssel ist durch eine Passphrase geschützt.

Wenn ich jetzt versuche, eine Synchronisierung in GitHub Desktop durchzuführen, erhalte ich die folgende Fehlermeldung:

Geben Sie hier die Bildbeschreibung ein

In Git Bash funktioniert es gut (es fragt mich jedoch vor jedem Pull/Push nach meiner Passphrase). Irgendeine Idee, was ich tun muss, damit das funktioniert?

  • Fehlt etwas zu meiner Antwort unten?

    – VonC

    31. März 2020 um 7:46 Uhr

  • Ich habe meine Antwort geändert, um eine mit OpenSSH einzuschließen: Können Sie überprüfen, ob dies besser ist?

    – VonC

    30. Mai 2020 um 12:43 Uhr

Benutzer-Avatar
VonC

Wie kürzlich in „Berechtigungsfehler beim Klonen in Git in Windows“ zu sehen, versuchen Sie, GitHub Desktop zu starten, nachdem Sie:
(Warnung: Kommentare zuerst lesen)

git config --global core.sshCommand "'C:\Windows\System32\OpenSSH\ssh.exe'"

Dadurch wird sichergestellt, dass GitHub Desktop das richtige OpenSSH verwendet ssh.exestatt einer internen, wie in zu sehen desktop/desktop Ausgabe 5641.

Wenn Git Bash nicht richtig funktioniert Danach können Sie entweder:

  • die Konfiguration zurücksetzen:

    git config --global --unset core.sshCommand 
    
  • oder verwenden Sie die Git für Windows SSH

    git config --global core.sshCommand "'C:\Program Files\Git\usr\bin\ssh.exe'"
    

Wenn C:\Program Files\Git\usr\bin\ ist schon in deiner %PATH%brauchen Sie nicht einmal diese Konfiguration: die ssh.exe von Git für Windows wäre standardmäßig ausgewählt.

  • Funktioniert bei mir nicht. Davor hat zumindest git bash funktioniert.

    – DarkMath

    29. Oktober 2020 um 12:20 Uhr

  • @DarkMath OK, welche Version von Windows und von Git verwenden Sie? Und das kannst du mit kündigen git config --global unset core.sshCommand

    – VonC

    29. Oktober 2020 um 12:42 Uhr

  • Tun Sie dies nicht, sonst funktioniert Ihre Git-Bash nicht mehr, zumindest ist mir das passiert. Ich hätte den Kommentar von @DarkMath lesen sollen … smh

    – Raffael Setin

    22. März um 20:58 Uhr

  • @RaphaelSetin Ich habe die Antwort so bearbeitet, dass sie eine klarere Warnung vor den unbeabsichtigten Folgen enthält git config Möglichkeit.

    – VonC

    22. März um 21:24 Uhr

  • Ich habe einen Weg gefunden, es rückgängig zu machen, aber danke, dass du es dort hinzugefügt hast; es wird anderen sicherlich helfen, wenn ihnen das auch passiert

    – Raffael Setin

    24. März um 0:05 Uhr

Nachdem ich erfolglos gesucht und versucht hatte, ssh-agent zu verwenden, stellte ich fest, dass Sie beim Starten von github desktop mit einer Git-Bash-Shell zur Eingabe einer Passphrase aufgefordert werden. Ich habe meinem .bash_profile einen Alias ​​hinzugefügt, um das Starten des Github-Desktops zu vereinfachen.

eval C:/Users/labrat/AppData/Local/GitHubDesktop/GitHubDesktop.exe

Ich habe auch meinen git core.sshCommand so eingestellt, was sowohl für git bash als auch für github desktop funktioniert:

git config core.sshCommand "'C:\\Program Files\\Git\\usr\\bin\\ssh.exe' -i C:/Home/.ssh/id_rsa_name"

  • Wo haben Sie die .bash_profile-Datei unter Windows 10 gefunden?

    – Gabriel Patricio Bonilla

    15. April 2021 um 14:31 Uhr

  • sollte id_rsa_name mein privater oder öffentlicher sein? Ich entschuldige mich im Voraus, wenn dies eine dumme Frage ist

    – yolob 21

    12. Mai 2021 um 7:53 Uhr

Ich konnte es zum Laufen bringen, indem ich eine ssh-Konfigurationsdatei mit einem ähnlichen Inhalt wie in diesem Kern erstellt habe:

https://gist.github.com/JoaquimLey/e6049a12c8fd2923611802384cd2fb4a

Der minimale Inhalt, den ich brauchte, um es zum Laufen zu bringen, war

Host github.com
    IdentityFile /c/Users/username/.ssh/id_github

Beim Klonen des Repositorys musste ich die URL-Option verwenden, da die Registerkarte Github.com die HTTPS-URL verwendet.

Geben Sie hier die Bildbeschreibung ein

löste das Problem durch Deaktivieren der System-OpenSSH-Einstellung.

1175330cookie-checkWie kann ich SSH-Remote mit GitHub Desktop verwenden?

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

Privacy policy