856 Stimmen

Berechtigung verweigert (publickey) beim Bereitstellen von heroku-Code. fatal: Die Gegenstelle hat sich unerwartet aufgehängt

Ich versuche, meinen Code auf Heroku mit der folgenden Befehlszeile bereitstellen:

git push heroku master

erhalten aber folgende Fehlermeldung:

Permission denied (publickey).
fatal: The remote end hung up unexpectedly

Ich habe meinen öffentlichen SSH-Schlüssel bereits hochgeladen, aber die Fehlermeldung bleibt bestehen.

1voto

thatdankent Punkte 950

Nachdem ich all diese Ideen ausprobiert hatte, hatte ich immer noch Probleme. Das war mein Problem:

Mein ferngesteuertes Heroku-Repository wurde geknackt. Ich habe es wie folgt erneuert:

git remote -v

Entfernen Sie dann die falsche heroku-Datei:

git remote rm heroku

Dann fügen Sie die neue

git remote add heroku git@heroku.com:sitename.git

Sie können den Seitennamen von Ihrer Heroku-Einstellungsseite für Ihre Anwendung abrufen. Viel Glück!

1voto

Ashok Punkte 11

Das Problem, mit dem ich konfrontiert war, war unter Windows und immer, wenn ich "heroku keys:add" ausführe, werden die Github-Schlüssel ausgewählt. Hier sind die Schritte, die ich befolgt habe, um das Problem zu lösen

  1. in das .ssh-Verzeichnis unter dem Ordner "Dokument und Einstellungen" gehen und die Git-Hub-Schlüssel löschen
  2. den Befehl ausführen heroku schlüssel:add

Mit dem obigen Befehl wurde ich aufgefordert, einen neuen Schlüssel zu erzeugen, und die folgende Ausgabe wurde angezeigt Es konnte kein vorhandener öffentlicher Schlüssel gefunden werden. Möchten Sie einen generieren? [Yn] Y Generierung eines neuen öffentlichen SSH-Schlüssels. Öffentlichen SSH-Schlüssel hochladen C:/Dokumente und Einstellungen/Admin/.ssh/id_rsa.pub... done ! Das 'heroku'-Gem ist veraltet und wurde durch den Heroku Toolbelt ersetzt, den Sie hier herunterladen und installieren können https://toolbelt.heroku.com .

  1. Führen Sie den Befehl erneut aus heroku schlüssel:add

Der obige Befehl ergibt nicht die folgende Ausgabe Vorhandenen öffentlichen Schlüssel gefunden: C:/Dokumente und Einstellungen/Admin/.ssh/id_rsa.pub Hochladen des öffentlichen SSH-Schlüssels C:/Dokumente und Einstellungen/Admin/.ssh/id_rsa.pub... done

  1. Verwenden Sie nun git push heroku master

Mit den oben genannten Schritten konnte ich das Problem lösen und die Anwendung in der Cloud bereitstellen.

1voto

Novpiar Effendi Punkte 167

Ich hatte das gleiche Problem; die folgenden Schritte sollten helfen:

  1. Melden Sie sich zunächst an: heroku login
  2. Alle Schlüssel löschen: heroku keys:clear
  3. Alle Dateien im lokalen Ordner löschen ( all .pub Dateien und know_host ) in .ssh/ folder
  4. Loggen Sie sich erneut ein: heroku login - Sie werden ohne Schlüssel gefragt, also folgen Sie den Anweisungen auf dem Bildschirm.

0voto

Alexis Punkte 21400

Ich habe heroku toolbelt neu installiert und es hat funktioniert.

0voto

Kiddo Punkte 1127

Wenn Sie zum Beispiel "sudo" verwenden möchten:

sudo git clone git@heroku.com......... -o heroku

sollten Sie auch einen ssh-Schlüssel für Ihren Root-Benutzer erzeugen.

sudo su
cd /root/.ssh  
ssh-keygen -t rsa
....
heroku keys:add id_rsa.pub

und es wird funktionieren.

wenn Sie nicht den Root-Benutzer verwenden, erzeugen Sie den ssh-Schlüssel stattdessen in Ihrem Benutzerverzeichnis.

cd /home/user/.ssh

Tut mir leid, wenn meine Sätze durcheinander geraten sind...

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