857 Stimmen

Git fragt mich ständig nach der Passphrase für meinen ssh-Schlüssel

Ich habe Schlüssel erstellt, wie im Github-Tutorial beschrieben, sie bei Github registriert und versucht, ssh-agent explizit zu verwenden - dennoch fragt mich Git jedes Mal nach meiner Passphrase, wenn ich versuche, einen Pull oder Push durchzuführen.

Was könnte die Ursache sein?

48voto

IgorGanapolsky Punkte 24581

Versuchen Sie, dies zu Ihrem ~/.ssh/config :

Host *
   AddKeysToAgent yes
   UseKeychain yes
   IdentityFile ~/.ssh/id_rsa

... vorausgesetzt, Ihr privater Schlüssel heißt id_rsa

25voto

thowfeeq Punkte 123

Früher wurde das Flag -K verwendet, um den Schlüssel hinzuzufügen, aber jetzt:

ssh-add --apple-use-keychain

Die Flags -K und -A sind veraltet und wurden ersetzt durch durch die Flags --apple-use-keychain und --apple-load-keychain Flaggen ersetzt.


SPÄTERE BEARBEITUNG: Sie müssen eventuell hinzufügen ssh-add --apple-load-keychain -q zu Ihrem .bash_profile o .bashrc o .zshrc oder gleichwertig.

19voto

mirushaki Punkte 807

Führen Sie das Folgende aus:

eval $(ssh-agent) && ssh-add ~/.ssh/id_rsa &>/dev/null

Geben Sie die Passphrase ein und prüfen Sie dann git. Git sollte nach diesem Befehl nicht mehr nach der Passphrase fragen.

Die Originalquelle: https://gist.github.com/egoens/c3aa494fc246bb4828e517407d56718d

15voto

Chris Karpyszyn Punkte 769

Wenn Sie nicht GitBash verwenden und unter Windows arbeiten, müssen Sie Ihren ssh-Agent mit folgendem Befehl starten

start-ssh-agent.cmd

Wenn Ihr ssh-Agent nicht eingerichtet ist, können Sie PowerShell als Administrator öffnen und den manuellen Modus aktivieren

Get-Service -Name ssh-agent | Set-Service -StartupType Manual

12voto

Stephen Harris Punkte 1363

Wenn die oben genannten Lösungen nicht funktionieren, sollten Sie überprüfen, ob Sie auch den öffentlichen Schlüssel haben (normalerweise id_rsa.pub ). Es ist ungewöhnlich, dass das nicht der Fall ist, aber für mich war das der Grund.

So erstellen Sie Ihren öffentlichen Schlüssel aus Ihrem privaten Schlüssel:

ssh-keygen -y -f ~/.ssh/id_rsa > ~/.ssh/id_rsa.pub

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X