Wie kann ich GitHub Desktop so konfigurieren, dass es mit SSH-Schlüsseln funktioniert?
- Grundlagen von SSH-Schlüsseln und GitHub
- SSH-Schlüssel erzeugen
- Öffentlichen Schlüssel zu GitHub hinzufügen
- SSH-Agent verwenden
- GitHub Desktop für SSH konfigurieren
- Prüfung der SSH-Verbindung
- Mögliche Fehler und Tipps
- Zusammenfassung
Grundlagen von SSH-Schlüsseln und GitHub
Um GitHub Desktop mit SSH-Schlüsseln zu verwenden, muss zuerst ein SSH-Schlüsselpaar auf deinem Rechner erstellt werden. SSH-Schlüssel erlauben eine sichere, schlüssellose Authentifizierung gegenüber GitHub, sodass du beim Pushen oder Pullen von Repositories nicht jedes Mal dein Passwort eingeben musst. GitHub Desktop unterstützt die Verwendung von SSH, benötigt aber eine korrekte Einrichtung des SSH-Clients auf deinem System.
SSH-Schlüssel erzeugen
Wenn du noch keinen SSH-Schlüssel hast, erzeugst du diesen am einfachsten über die Kommandozeile. Öffne dazu das Terminal (unter macOS oder Linux) oder PowerShell / Git Bash (unter Windows). Gib folgenden Befehl ein, um ein neues Schlüsselpaar zu generieren:
ssh-keygen -t ed25519 -C "deine-email@example.com"Falls dein System das Ed25519-Format nicht unterstützt, kannst du auch rsa verwenden mit ssh-keygen -t rsa -b 4096 -C "deine-email@example.com". Während der Erstellung wirst du gefragt, wo der Schlüssel gespeichert werden soll; die Standardwerte (meist ~/.ssh/id_ed25519) sind meistens in Ordnung. Du kannst zudem optional ein Passwort für den Schlüssel setzen, dies erhöht die Sicherheit.
Öffentlichen Schlüssel zu GitHub hinzufügen
Nachdem der SSH-Schlüssel generiert wurde, musst du den öffentlichen Teil (die Datei id_ed25519.pub oder id_rsa.pub) zu deinem GitHub-Account hinzufügen. Öffne die Datei mit einem Texteditor oder nutze das Terminal mit cat ~/.ssh/id_ed25519.pub und kopiere den gesamten Inhalt. Melde dich bei GitHub an, gehe zu Settings > SSH and GPG keys und klicke auf New SSH key. Füge den kopierten Schlüssel in das Feld ein und gib ihm einen eindeutigen Namen, zum Beispiel den Rechnernamen oder den Ort, wo der Schlüssel verwendet wird.
SSH-Agent verwenden
Damit GitHub Desktop den SSH-Schlüssel verwenden kann, sollte dein SSH-Schlüssel dem SSH-Agenten hinzugefügt werden. Der SSH-Agent speichert deinen privaten Schlüssel im Speicher und ermöglicht so eine nahtlose Authentifizierung. Zum Start des Agenten und hinzufügen des Schlüssels gib im Terminal ein:
eval "$(ssh-agent -s)"ssh-add ~/.ssh/id_ed25519Unter Windows wird dies ggf. automatisch durch Git Bash oder den Windows OpenSSH-Dienst erledigt. Falls du ein Passwort für den Schlüssel vergeben hast, wirst du dieses bei ssh-add eingeben müssen.
GitHub Desktop für SSH konfigurieren
GitHub Desktop verwendet standardmäßig HTTPS URLs für Repositories. Damit SSH verwendet wird, musst du das Remote-URL des Projektes auf das SSH-Format ändern. Das sieht ungefähr so aus:
git@github.com:Benutzername/Repository.gitWenn du ein Repository auf GitHub Desktop hinzufügst, kannst du die URL entweder direkt als SSH-URL eingeben oder nachdem du das Repository geklont hast, in der Kommandozeile im Repository-Verzeichnis das Remote-URL anpassen:
git remote set-url origin git@github.com:Benutzername/Repository.gitGitHub Desktop verwendet dann automatisch deinen SSH-Schlüssel, wenn es Operationen wie Pull oder Push durchführt.
Prüfung der SSH-Verbindung
Um sicherzustellen, dass alles korrekt eingerichtet ist, teste die Verbindung zum GitHub-Server mit:
ssh -T git@github.comBeim ersten Verbindungsaufbau wirst du gefragt, ob du dem GitHub-Server vertraust – das bestätigst du mit yes. Daraufhin solltest du eine Willkommensnachricht erhalten, die bestätigt, dass die Authentifizierung mit deinem GitHub-Konto funktioniert. Wenn dies klappt, ist alles bereit für die Verwendung mit GitHub Desktop.
Mögliche Fehler und Tipps
Falls GitHub Desktop einen Fehler bei der SSH-Verbindung meldet, überprüfe, ob der SSH-Agent läuft und ob der korrekte Schlüssel hinzugefügt wurde. Achte darauf, dass unter ~/.ssh/config keine unerwünschten Einstellungen stehen, die die Verbindung stören könnten. Manchmal hilft auch, GitHub Desktop neu zu starten oder dein System einmal neu zu starten, damit SSH-Agent und Desktop-App korrekt synchronisiert sind.
Zusammenfassung
Die Nutzung von SSH-Schlüsseln mit GitHub Desktop bringt mehr Sicherheit und Komfort bei der Arbeit mit Git-Repositories. Das Wichtigste ist, dass du SSH-Schlüssel erzeugst, den öffentlichen Schlüssel bei GitHub hinterlegst, den SSH-Agenten nutzt und beim Klonen oder Ändern der Repository-URLs das SSH-Format verwendest. Danach arbeitet GitHub Desktop über SSH und authentifiziert dich ohne Passworteingabe automatisch.
