'heroku' scheint kein Git-Repository zu sein


180

Wenn ich versuche, meine App an Heroku zu senden, erhalte ich folgende Antwort:

fatal: 'heroku' does not appear to be a git repository
fatal: Could not read from remote repository.

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

Ich habe 'Heroku Keys: Add' ausprobiert, aber immer noch das gleiche Ergebnis erzielt. Ich habe bereits einen SSH-Schlüssel für mein GitHub-Konto.


Mit welchem ​​Befehl haben Sie gedrückt? und welche schritte hast du vorher gemacht?
StickMaNX

1
Schauen Sie sich die Ausgabe von git remote -van, um zu sehen, welche Fernbedienungen Sie eingerichtet haben.
John Beynon

1
Stellen Sie sicher, dass Sie sich im richtigen Verzeichnis befinden. das war mein problem
tmthyjames

1
@tmthyjames - Knall an, das war auch mein Problem, danke!
Andy McCullough

Antworten:


431

Um eine Heroku-App als Git-Fernbedienung hinzuzufügen, müssen Sie ausführen heroku git:remote -a yourapp.

Quelle: Bereitstellung mit Git


6
Dies ist die Lösung, wenn Sie das Repo geklont haben.
JGallardo

1
Beachten Sie nach dem Hinzufügen einer gültigen Fernbedienung, dass dies git push heroku masterfehlschlägt, wenn Sie versuchen, aus einem Unterverzeichnis bereitzustellen. Die Bereitstellung mit Heroku muss aus dem Stammverzeichnis mit einem gültigen Ordner package.json und .git erfolgen, wie hier angegeben. Stackoverflow.com/questions/38658038/…
Junior Mayhé

1
Ich würde hinzufügen, dass yourappSie damit den Namen der Heroku-App meinen, der möglicherweise nicht immer mit dem Namen Ihrer App in Git oder lokal usw.
übereinstimmt

48

Sie können Folgendes in Ihrem Stammverzeichnis versuchen:

// Git für dein Projekt initialisieren, die Änderungen hinzufügen und ein Commit durchführen

git init
git add .
git commit -m "first commit"

// Heroku App erstellen und auf Heroku drücken

heroku create
git push heroku master

Ich bin mir nicht sicher, wo Sie sich gerade befinden. Sie brauchen auch keinen Github, um auf Heroku zu implementieren, nur Git. Hoffe das hilft!


2
Das hat bei mir funktioniert. Musste nur Heroku erstellen erneut ausführen. Aus irgendeinem Grund wurde beim ersten Mal keine Git-Fernbedienung erstellt.
Joshua Dance

1
Vor dem Push müssen Sie 'heroku git: remote -a yourapp' hinzufügen
Jitendra

35

Stellen Sie zunächst sicher, dass Sie bei heroku angemeldet sind:

heroku login 

Geben Sie Ihre Anmeldeinformationen ein.

Es ist üblich, diesen Fehler zu erhalten, wenn ein geklontes Git-Repo auf einem neuen Computer verwendet wird. Selbst wenn sich Ihre Heroku-Anmeldeinformationen bereits auf dem Computer befinden, besteht noch keine lokale Verbindung zwischen dem geklonten Repo und Heroku. CDen Sie dazu in das Root-Verzeichnis des geklonten Repos und führen Sie es aus

heroku git:remote -a yourapp

1
Nur ein Hinweis für Anfänger, yourappoben ist Ihr App-Name unter Einstellungen im Heroku-Dashboard
nkhil

9

Folgender offizieller Heroku-Artikel :

GIT initialisieren

$ cd myapp
$ git init

$ git add .
$ git commit -m "my first commit"

Dann erstellen (initialisieren) Sie Heroku App mit:

$ heroku create YourAppName

Zuletzt git remote hinzufügen:

$ heroku git:remote -a YourAppName

Jetzt können Sie Ihre App sicher bereitstellen mit:

$ git push heroku master

Sie sollten einige Zeit warten und prüfen, ob während der Bereitstellung kein Fehler / Interrupt auf der Konsole angezeigt wird. Für Details schauen Sie sich den Heroku-Artikel an .


7

Befolgen Sie diese Schritte:

$ heroku login

Erstellen eines neuen Git-Repositorys
Initialisieren Sie ein Git-Repository in einem neuen oder vorhandenen Verzeichnis

$ cd my-project/
$ git init
$ heroku git:remote -a appname

Bereitstellen Ihrer Anwendung
Übertragen Sie Ihren Code in das Repository und stellen Sie ihn mithilfe von Git in Heroku bereit.

$ git add . 
$ git commit -am "make it better"
$ git push heroku master

Vorhandenes Git-Repository
Für vorhandene Repositorys fügen Sie einfach die Heroku-Fernbedienung hinzu

$ heroku git:remote -a appname

Fehler: ---> App nicht kompatibel mit Buildpack: https://codon-buildpacks.s3.amazonaws.com/buildpacks/heroku/python.tgz... ich verstehe nicht, wo ist es falsch?
KingRider

@KingRider Überprüfen Sie, welche App Sie bereitstellen. Wenn Sie die Python-App
bereitstellen,

4

Es könnte sich lohnen, die Konfigurationsdatei im Ordner .git zu überprüfen. Wenn die Heroku-Parameter fehlen, erhalten Sie diesen Fehler Heroku-Parameter

[remote "heroku"]
    url = git@heroku.com:`[Your heroku app].git
    fetch = +refs/heads/*:refs/remotes/heroku/*

Der Ordner .git sollte sich im lokalen Computerdateiverzeichnis für die App befinden, die Sie in heroku erstellt haben. zB C: \ Benutzer \ Sie \ Ihre App.git

Hoffe das hilft


3

Mein Problem war, dass ich Git (anstelle von Heroku Git) verwendet habe, um die App zu klonen. Dann musste ich:

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

Denken Sie daran, MyApp in Ihren App-Namen zu ändern.

Dann könnte ich fortfahren:

git push heroku master

3

Wenn dieser Fehler auftritt, liegt dies daran, dass es keine Fernbedienung namens Heroku gibt. Wenn Sie eine Heroku-Erstellung durchführen und die Git-Fernbedienung noch nicht vorhanden ist, erstellen wir automatisch eine (vorausgesetzt, Sie befinden sich in einem Git-Repo). Um Ihre Fernbedienungen anzuzeigen, geben Sie Folgendes ein:

" git remote -v". # Für eine App namens 'appname' wird Folgendes angezeigt:

$ git remote -v
heroku git@heroku.com:appname.git (fetch)
heroku git@heroku.com:appname.git (push)

Wenn Sie eine Fernbedienung für Ihre App sehen, können Sie diese einfach git push masterdurch den tatsächlichen Namen der Fernbedienung ersetzen.

Wenn es fehlt, können Sie die Fernbedienung mit dem folgenden Befehl hinzufügen:

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

Wenn Sie bereits eine Fernbedienung namens Heroku hinzugefügt haben, wird möglicherweise die folgende Fehlermeldung angezeigt:

fatal: remote heroku already exists.

Entfernen Sie dann die vorhandene Fernbedienung und fügen Sie sie mit dem obigen Befehl erneut hinzu:

git remote rm heroku

Hoffe das hilft…


2

Für mich war die Antwort, vor dem Ausführen von heroku createoder in das Stammverzeichnis der App zu cdgit push heroku master


1

Ich bin auf denselben Fehler gestoßen, der einen viel unerfahreneren Fehler gemacht hat: Ich habe Heroku mit einem Großbuchstaben "H" anstelle von Kleinbuchstaben eingegeben.

Ich erkenne, dass dies sicherlich nicht die Lösung für alle ist, die auf diesen Fehler stoßen, aber es war in meinem Fall.


1

Ich habe den gleichen Fehler erhalten und es stellte sich heraus, dass ich mich im falschen Verzeichnis befand. Es ist ein einfacher Fehler, so überprüfen Sie , dass Sie in der Wurzel und dann laufen heroku createund heroku git push masterwieder. Natürlich müssen Sie git init, wie in der obigen StickMaNX-Antwort erwähnt, dies bereits vor den Heroku-Schritten getan haben.



1

Sie haben vergessen, Ihren App-Namen mit Ihrem Heroku zu verknüpfen. Es ist ein sehr häufiger Fehler. Wenn Ihre App nicht erstellt wurde, verwenden Sie:

heroku create (optional app name)

sonst:

git add .
git commit -m "heroku commit"

heroku git:remote -a YOUR_APP_NAME

git push heroku master

0

Für diejenigen, die versuchen, Heroku dazu zu bringen, an codeanywhereIDE zu arbeiten :

heroku login
git remote add heroku git@heroku.com:MyApp.git
git push heroku

0

Ich musste die Windows-Eingabeaufforderung mit Administratorrechten ausführen


Danke für deine Antwort. Vielleicht könnten Sie dem OP erklären, wie das gemacht wird? Auch für zukünftige Betrachter dieses Threads ist es immer hilfreich, möglichst detaillierte Antworten zu geben.
Niels

@niels finden das cmd-Symbol einfach über das Startmenü. Klicken Sie dann mit der rechten Maustaste und drücken Sie Als Administrator
Jesus Rodriguez

0

Die folgenden Befehle eignen sich gut für die Bereitstellung von Ruby on Rails-Anwendungen auf Heroku, wenn Heroku bereits auf dem Entwicklercomputer installiert ist. # zeigt einen Kommentar an

  1. Heroku Login
  2. Heroku erstellen
  3. Heroku-Schlüssel: Fügen Sie # hinzu. Dies fügt Heroku lokale Maschinenschlüssel hinzu, um eine wiederholte Passworteingabe zu vermeiden
  4. Git Push Heroku Meister
  5. heroku benennt den neuen Anwendungsnamen #rename application in den anderen bevorzugten Namen als den automatisch generierten heroku-Namen um



0

Ich habe alle Antworten hier gesehen und das einzige, was fehlt, ist, nachdem ich diese Schritte durchlaufen habe:

$ git add .
$ git commit -m "first heroku commit"

Sie sollten den folgenden Befehl ausführen:

$ heroku git:remote -a <YourAppNameOnHeroku>

Und zum Schluss führen Sie Folgendes aus:

$ git push -f heroku <NameOfBranch>:master

Beachten Sie, dass ich < NameOfBranch > verwendet habe, da bei einem Master in einem anderen Zweig immer noch Fehler auftreten. Wenn Sie also im Master arbeiten, verwenden Sie master. Andernfalls geben Sie den Namen des Zweigs dort ein.


0

Alle Apps anzeigen, mit denen Heroku Zugriff hat

heroku apps

Und überprüfen Sie, ob Ihre App dann vorhanden ist

 execute heroku git:remote -a yourapp_exist
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.