wake-up-neo.com

GitHub: Berechtigung verweigert (publickey). fatal: Konnte nicht aus dem Remote-Repository lesen

Ich habe Probleme mit GitHub. Ich habe mit einem Remote-Repository von Git herumgespielt.

Wenn ich jetzt versuche, Änderungen am Remote-Verzeichnis vorzunehmen, d. H.

git remote show Origin

oder

git Push -u Origin master

ich bekomme diesen Fehler

Erlaubnis verweigert (publickey) . fatal: Konnte nicht aus dem Remote-Repository lesen.

Bitte vergewissern Sie sich, dass Sie die richtigen Zugriffsrechte haben und das Repository ist vorhanden . Ulrichs-MacBook-Pro: coredatatest ulrichheinelt $ git Push -u Origin master Erlaubnis verweigert (publickey) . fatal: Konnte nicht aus dem Remote-Repository lesen.

Ich würde mich freuen, wenn ich wieder mit einem neuen (leeren) Remote-Verzeichnis beginnen könnte. Oder gibt es eine Möglichkeit, diesen Fehler zu beheben?

Dies sind meine ersten Schritte mit GitHub, die gestern begonnen haben ... Vielen Dank im Voraus!

Edit 1

meine Einstellungen unter https://github.com/UlliH/CoreDataTest/settings

...

Edit 2

zu früh glücklich :-(

Nach dem Einstellen der SSH- und GPG-Schlüssel sind die Fehler immer noch gleich. : - /

Edit 3

ich denke, das stimmt so, aber immer noch dasselbe ...

enter image description here

16
Ulli H
  • In Ihrem GitHub Profil gibt es eine Edit Profile Schaltfläche.
    Sie befindet sich in der rechten oberen Ecke der Webseite. 
  • Drücken Sie die Taste und Sie sehen das linke Personal Settings-Menü. 
  • Suchen Sie in diesem Menü die SSH and GPG keys-Option und drücken Sie sie.
  • Sie sehen eine Option New SSH key, um einen neuen Schlüssel hinzuzufügen.
13
Evgeny Karkan
  1. Kopieren Sie die Ausgabe von ssh-keygen -t rsa -b 4096 -C "[email protected]" 
  2. Fügen Sie die oben kopierte Ausgabe in Ihren cat id_rsa.pub ein.
  3. Paste the above copied outpur into your Github profile -> Settings -> SSH and GPG Keys -> Add new SSH key.
9
Shravan40
  1. generiere deinen schlüssel

    ssh-keygen

  2. Visualisieren Sie Ihre Schlüssel

    ls ~/.ssh 

    id_rsa id_rsa.pub

  3. Starten Sie den Agenten

    eval ssh-agent

  4. Fügen Sie dem Agenten Ihren Schlüssel hinzu

    ssh-add ~/.ssh/id_rsa

Für mich musste ich festlegen, welcher Host welchen SSH-Schlüssel verwenden soll . In Ihrem SSH-Ordner des lokalen Computers normalerweise unter ~/.ssh die Datei config mit Ihrem bevorzugten Editor wie vim oder gedit erstellen/bearbeiten

vim ~/.ssh/config

und fügen Sie Folgendes mit Ihrem git Host , HostName und ssh IdentityFile hinzu (Dateipfad Ihres privaten ssh-Schlüssels):

Host gitlab.example.com
    HostName gitlab.example.com
    IdentityFile /home/YOURUSERNAME/.ssh/id_rsa
1
Waqleh

Ich hatte das gleiche Problem mit meiner SSH-Verbindung. Ich habe versucht, es durch ssh zu bearbeiten, konnte aber keine funktionierende Lösung für finden. In diesem Fall habe ich meine Remote-URL von SSH in HTTPS geändert. Ich habe den Befehl benutzt: $ git remote set-url Origin https://github.com/USERNAME/REPOSITORY.git. Sie können sehen, wie sich Ihre Remote-URL geändert hat: $ git remote -v.

Weitere Informationen finden Sie unter hier

Dadurch wird Ihre Remote-URL in HTTPS geändert, sodass Sie jetzt Ihren GitHub-Benutzernamen und Ihr Kennwort eingeben müssen, um Ihr Projekt auf das Remote-Repo zu übertragen. Ich weiß, dass ssh einfacher ist als HTTPS, was bedeutet, dass Sie Ihren Benutzernamen und Ihr Kennwort nicht eingeben müssen. Dies kann jedoch hilfreich sein, wenn Sie keine Lösung für die Behebung durch ssh gefunden haben und sich in Eile befinden Code zu Ihrem Repo.

1
shrillshr
  1. stellen Sie sicher, dass Sie die Dateien "Public Key" und "Private Key" richtig benannt haben. genau wie "id_rsa" und "id_rsa.pub". Dies ist etwas, das Sie in Ihrem Benutzer/.ssh-Ordner finden können. 

  2. fügen Sie den öffentlichen Schlüssel in GitHub hinzu 

  3. Starten Sie Ihr Terminal neu (Bash wird unterstützt) und versuchen Sie erneut, zu klonen

wenn Sie Schreibzugriff auf das Repo haben, sollten Sie sich nach diesen Änderungen gut auskennen. 

Ich habe aus Erfahrung (nach einer Stunde) keine Informationen gefunden, die besagten, dass wir den Namen der privaten und öffentlichen Dateien wie oben erwähnt explizit beibehalten müssen. 

Viel Spaß beim Codieren! 

0
Vikas Pandey