1120 Stimmen

GitHub-Fehlermeldung - Berechtigung verweigert (publickey)

Hat jemand diesen Fehler gesehen und weiß, was zu tun ist?

Ich verwende das Terminal, ich bin im Root, das GitHub-Repository existiert und ich weiß nicht, was ich jetzt tun soll.

> git push -u origin master
Permission denied (publickey).
fatal: Could not read from remote repository.

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

910voto

bdukes Punkte 144019

GitHub ist nicht in der Lage, Sie zu authentifizieren. Sie haben also entweder keinen SSH-Schlüssel eingerichtet, weil Sie nicht einen auf Ihrem Rechner einrichten oder Ihr Schlüssel ist nicht mit Ihrem GitHub-Konto verknüpft.

Sie können auch die HTTPS-URL anstelle der SSH/git-URL verwenden, damit Sie nicht mit SSH-Schlüsseln arbeiten müssen. Dies ist Die von GitHub empfohlene Methode .

Außerdem hat GitHub eine Hilfeseite speziell für diese Fehlermeldung und erklärt detailliert alles, was Sie überprüfen könnten.

281voto

VelikiiNehochuha Punkte 3417

Ich weiß um dieses Problem. Nachdem Sie den ssh-Schlüssel hinzugefügt haben, fügen Sie den ssh-Schlüssel auch dem ssh-Agenten hinzu (vom offiziellen docs )

ssh-agent -s
ssh-add ~/.ssh/id_rsa

Nachdem alles funktioniert hat, kann Git den richtigen Schlüssel anzeigen, was vorher nicht möglich war.

162voto

IgorGanapolsky Punkte 24581

Haben Sie eine Konfiguration Datei in Ihrem ~/.ssh-Verzeichnis? Sie sollte einen Inhalt wie diesen haben:

Host github.com 
 IdentityFile ~/.ssh/github_rsa

Angenommen, Sie haben einen ssh-Schlüssel namens github_rsa

und lud es auf GitHub hoch...

HINWEIS: Sie müssen diese Art der expliziten Konfiguration befolgen, wenn Sie mehr als einen Schlüssel (2 und mehr) in Ihrem ~/.ssh/ Verzeichnis haben. Wenn Sie den Schlüssel nicht auf diese Weise angeben, wird der erste Schlüssel in der Reihenfolge genommen und für die Github-Authentifizierung verwendet, so dass es dann auf den Namen der Schlüsseldatei ankommt.

72voto

cdhowie Punkte 142402

Sie müssen einen SSH-Schlüssel erzeugen (falls Sie noch keinen haben) und den öffentlichen Schlüssel mit Ihrem Github-Konto verknüpfen. Siehe Github's eigene Dokumentation .

72voto

rmundo Punkte 768

Das ist mir passiert. Aus irgendeinem Grund wurde meine Herkunft durcheinander gebracht, ohne dass ich es gemerkt habe:

Prüfen Sie, ob Ihre Einstellungen noch korrekt sind

git remote -v

Die Url muss etwa ssh://git@github.com/YourDirectory/YourProject.git lauten; Wenn Sie git@github.com nicht sehen, verwenden Sie

git remote set-url origin git://github.com/YourDirectory/YourProject.git

um es richtig zu machen. Oder Sie können die Github-App verwenden, um die URL des primären entfernten Repositorys in den Einstellungen Ihres speziellen Repositorys zu überprüfen und einzustellen.

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