Do wdrażania w Heroku używam git push heroku master
. Ale jak sprawdzić, którą wersję przeniosłem do heroku? (Często mam wątpliwości, czy zaktualizowałem najnowszą wersję)
Dla tych, którzy nie są zaznajomieni z tym, skrypt tworzenia Heroku generuje zdalne repozytorium git, do którego można wysłać. Po wypchnięciu kod jest wdrażany w magiczny sposób.
Heroku dodaje repozytorium zdalne do lokalnego w postaci:
$ git remote add heroku [email protected]:appname.git
Więcej informacji w podręczniku Heroku „Wdrażanie za pomocą Git”
Pytanie brzmi: Jak mogę zobaczyć najnowszą wersję w repozytorium Heroku?
źródło
Prawidłowa odpowiedź jest tak naprawdę prosta. Nie musisz niczego płacić, nie musisz też uciekać się do hacków COMMIT_HASH (które nie działają na stosie Cedar). Wystarczy, że:
git ls-remote <remote>
źródło
git ls-remote heroku | awk 'END{print $1}' | xargs git show
Możesz teraz chcieć,
heroku releases
a zobaczysz jak 5 zatwierdzeń. przynajmniej początek.źródło
co powiesz na
źródło
master
odwołanie do gałęzi może, ale nie musi, zostać zaktualizowane do wdrożonego SHA.jeśli napotkasz sytuację, tak jak ja właśnie to zrobiłem, w której współpracownik przywrócił twoją aplikację heroku do wersji, która się nie pojawia,
heroku releases
ponieważ śledzi tylko 2 wersje ... kasowanie heroku / master metoda nie pomoże, ponieważ HEAD nie jest już tym, co jest wdrażane.nieudokumentowane na ratunek:
źródło
'heroku console' has been disabled
( devcenter.heroku.com/changelog-items/109 ). Próbowałem,heroku run "ENV['COMMIT_HASH']"
ale dostajębash: ENV[COMMIT_HASH]: command not found
. Kiedy używamecho
, otrzymuję ciągENV[COMMIT_HASH]
.heroku run console
i możesz zobaczyć, co jest wewnątrzENV['COMMIT_HASH']
zmiennej, uruchamiającheroku run echo $ENV['COMMIT_HASH']
(ponieważ jest to zmienna środowiskowa, potrzebujesz '$' - podobnie jakecho $PATH
).heroku używa pod spodem zwykłego starego Gita, więc ...
pokaż 5 ostatnich zatwierdzeń w bieżącej gałęzi:
git log -5
pokaż historię zmian za pomocą interfejsu GUI Gita:
gitk
wyświetl aktualny stan (pokaże, czy masz jakieś niezatwierdzone pliki):
git status
źródło