webentwicklung-frage-antwort-db.com.de

Wie kann ich die Heroku-App zurücksetzen und alles neu festlegen?

Ich baue eine Anwendung, die ich auch in Heroku teste. Ich bin heute auf ein Problem gestoßen und musste ein Commit in meinem lokalen Git Repo rückgängig machen, aber Heroku erkennt meine Änderungen jetzt nicht und sagt "alles ist auf dem neuesten Stand".

Also rennen

git Push heroku master

heroku antwortet mit 

Everything up-to-date

was nicht stimmt.

UPDATE: Dinge, die ich ausprobiert habe

git Push -f heroku master
git Push --force heroku master
git Push heroku +master
git Push --force heroku +master

Hat einige Änderungen im Quellcode vorgenommen und dann

git add.
git commit -a -m "Message" #(Then this commit shows in my git Explorer)
git Push heroku master #Everything up-to-date
50
bruno077

Klingt komisch. Vielleicht versuchen Sie es mit einem anderen Zweig?

git branch production
git checkout production
#do some code changes
git commit -am "some desperate code changes to try fix heroku"
git Push heroku production:master

Ich möchte, dass Sie einen neuen Produktionszweig erstellen. Außerdem ist es schön, einen Produktionszweig zu haben, den Sie zur Bereitstellung verwenden können.

Wenn es nicht funktioniert, denke ich, dass das Problem tiefer geht und Sie Hilfe von Heroku benötigen.

EDIT: Fügen Sie das Addon heroku Releases hinzu. Das Zurücksetzen ist so einfach wie heroku rollback

50
oma

Dies funktioniert nicht in allen Situationen, aber wenn Ihr lokales Repo vom Heroku-Repo abgewichen ist, kann git nicht herausfinden, wie die beiden miteinander in Einklang gebracht werden sollen. Sie können einen Push erzwingen, indem Sie ein Pluszeichen + vor dem Ref wie folgt setzen:

git Push heroku +master

In Ihrem Fall funktioniert es möglicherweise nicht, aber es ist einen Versuch wert.

44
Rob Davis

Das hat für mich funktioniert (von https://coderwall.com/p/okrlzg ):

  1. heroku plugins:install https://github.com/lstoll/heroku-repo.git ausführen
  2. heroku repo:reset -a APPNAME

Von dort wurde das Git-Repository "zurückgesetzt". Als nächstes ausführen:

  1. git Push heroku master -a APPNAME

um das git-Repository zu samen und Ihre App erneut bereitzustellen.

19
Jeremy Thomas

Angenommen, Sie haben einen Commit rückgängig gemacht, den Sie zuvor entfernt hatten. Ich denke du solltest machen:

git merge heroku/master

Wenn Sie nur vorwärts gehen möchten

oder:

git Push --force heroku master

wenn Sie diese Änderung verschieben möchten

8
txomon

Ich hatte einmal ein ähnliches Problem und löste es, indem ich ein Zeichen in meinem Code änderte und git add/commit/Push erneut ausführte. Ich kann mir vorstellen, dass Sie das schon versucht haben.

Brechen Sie die App nicht ab, fügen Sie einfach einen Kommentar zu einer CSS-Datei oder etwas anderem hinzu und sehen Sie, ob dies den Trick erfüllt

viel Glück

4
stephenmurdoch

Ich hatte das gleiche Problem und löste es durch 

Git Push Origin KOPF: Meister

Für dich

Git Push Heroku KOPF: Meister

3
Dahuchao

Nach einer Weile kam ich dazu, eine Rake-Task wie diese einzusetzen - deploy.rake

Dadurch wird die Bereitstellung standardisiert und beschleunigt, insbesondere wenn Migrationen implementiert werden sollen

puts `git Push -f [email protected]:#{APP}.git #{current_branch}`

Wie Sie sehen, wird für jeden Push die Option --force (oder -f) verwendet, um Konflikte mit dem Git-Repo von heroku zu ignorieren

Aber ich empfehle es nicht für Neuankömmlinge :) 

0
Serge Seletskyy

Ich hatte das gleiche Problem und habe alle Vorschläge ausprobiert und nicht geholfen. Ich musste Assets lokal vorkompilieren und Push ausführen, obwohl ich heroku run rake assets:precompile hatte.

rake assets:precompile
git add .
git commit -am "local assets precompile"
git Push heroku master