Git revert last commit in heroku
Zrobiłem kommit i popchnąłem go do origin i heroku
Potem zdałem sobie sprawę, że to było złe, więc zrobiłem
git reset --soft HEAD^
Ale kiedy naciskam na Heroku, dostaję
To [email protected]:app.git
! [rejected] master -> master (non-fast-forward)
error: failed to push some refs to '[email protected]:app.git'
To prevent you from losing history, non-fast-forward updates were rejected
Merge the remote changes (e.g. 'git pull') before pushing again. See the
'Note about fast-forwards' section of 'git push --help' for details.
Rozumiem problem. Jak mam postępować? Jak mogę przywrócić commit Last heroku? (Zakładam, że byłoby najlepszym rozwiązaniem) 4 answers
Jeśli przywróciłeś commit lokalnie, może być konieczne git push
z opcją -f
, Aby wymusić commit.
Możesz również rzucić okiem na wydawnictwa Heroku, które również mogą pomóc.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-07-19 00:16:50
Z http://devcenter.heroku.com/articles/releases#rollback
Użyj polecenia rollback, aby powrócić do ostatniego wydania:
$ heroku rollback
Rolled back to v51
Możesz wybrać inne Wydanie do target:
$ heroku rollback v40
Rolled back to v40
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-06-26 09:49:04
Biorąc pod uwagę, że już pchnął do innych(publiczne?) repozytoria, najlepszym sposobem na naprawienie tego jest prawdopodobnie cofnięcie git reset
lokalnie, a następnie wykonanie git revert
, aby utworzyć nowy commit, który odwraca skutki złego commita. Następnie wciśnij wszystko jeszcze raz. Więc krok po kroku:
Więc najpierw
git reset --hard origin/master
lubgit reset --hard heroku/master
(lub jak się nazywa twoja gałąź śledzenia heroku), aby odzyskać lokalnymaster
zły commit. To zdmuchnie wszelkie zaległe zmiany w Twoim egzemplarzu roboczym, więc bądź ostrożnie.Następnie
git revert HEAD
utworzyć nowy commit (wyświetli monit o komunikat commit).Następnie przyj, jak zwykle.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2011-03-09 15:52:07
Oto co zrobiłem. Najpierw utworzyłem nową gałąź ze starym commitem:
git checkout -b old-rev <commit-id>
Wtedy pobiegłem do mistrza heroku.]}
git push -f heroku old-rev:master
Kiedy skończę ze starą wersją i będę gotowy, aby dostać się do nowej wersji:
git checkout master
git push heroku master
git branch -d old-rev # deletes the old branch; warns if there will be data loss
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-09-17 10:22:47