Как просмотреть удаленную ревизию Git на Heroku

для развертывания в Heroku я использую git push heroku master. Но как я вижу, какую ревизию я подтолкнул к heroku? (Я часто сомневаюсь, если я подтолкнул последнюю версию)

для тех, кто не знаком с ним, сценарий создания Heroku генерирует удаленный репозиторий git, который вы нажимаете. При нажатии код развертывается волшебным образом.

Heroku добавляет удаленный репозиторий к локальному в виде:

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

подробнее в руководстве в Heroku "развертывание с Git"

вопрос: Как я могу увидеть последнюю версию в репозитории Heroku?

6 ответов


если вы просто нажали и хотите убедиться, что вы в курсе, то вы можете просто запустить git remote show heroku и вы увидите вывод, подобный этому:

* remote heroku
  Fetch URL: git@heroku.com:XXX.git
  Push  URL: git@heroku.com:XXX.git
  HEAD branch: master
  Remote branch:
    master tracked
  Local ref configured for 'git push':
    master pushes to master (up to date)

это (up to date) в конце будет заменить на (fast forwardable) если не в курсе.

или, если вы хотите увидеть полный журнал фиксации для пульта heroku, единственный способ, которым я знаю, как это проверить сначала. git checkout heroku/master даст вам текущий хэш фиксации и комментарий фиксации:HEAD is now at <short commit hash>... <commit comment> и git log даст вам остальная часть истории.


правильный ответ-это на самом деле так просто. Вам не нужно ничего проверять, и вам не нужно прибегать к COMMIT_HASH hacks (которые не работают на Cedar stack). Все, что вам нужно сделать, это: git ls-remote <remote>

 > git ls-remote heroku
ddaszxcewb585d3a3c00de816a197b14462791a3        HEAD
ddaszxcewb585d3a3c00de816a197b14462791a3        refs/heads/master

теперь вы можете heroku releases и вы увидите как 5 коммитов. хотя бы для начала.


насчет

git log heroku/master

Если вы столкнулись с ситуацией, как я только что сделал, где сотрудник откатил ваше приложение heroku до выпуска, который не отображается в heroku releases потому что они отслеживают только 2 выпуска... проверка метода heroku / master не поможет, потому что HEAD больше не является тем, что развернуто.

недокументированные на помощь:

$ heroku console "ENV['COMMIT_HASH']"
"12abcdef"

heroku использует простой старый Git внизу, так что..

показать последние 5 коммитов в текущей ветке: git log -5

показать историю фиксации через gui Git: gitk

просмотр текущего состояния (он покажет, есть ли у вас незафиксированные файлы): git status