Pour le déploiement sur Heroku, j'utilise git Push heroku master
. Mais comment puis-je voir quelle révision j'ai poussé vers Heroku? (Je doute souvent d'avoir poussé la version récente vers le haut)
Pour ceux qui ne le connaissent pas, le script de création de Heroku génère un référentiel git distant vers lequel vous poussez. Sur Push, le code est déployé comme par magie.
Heroku ajoute un référentiel distant au local sous la forme:
$ git remote add heroku [email protected]:appname.git
Plus d'informations dans le manuel de Heroku "Déploiement avec Git"
La question est: comment puis-je voir la dernière version dans le référentiel Heroku?
Si vous venez de pousser et que vous voulez vous assurer que vous êtes à jour, vous pouvez simplement exécuter git remote show heroku
et vous verrez une sortie similaire à ceci:
* remote heroku
Fetch URL: [email protected]:XXX.git
Push URL: [email protected]:XXX.git
HEAD branch: master
Remote branch:
master tracked
Local ref configured for 'git Push':
master pushes to master (up to date)
Cette (up to date)
à la fin sera remplacé par (fast forwardable)
s'il n'est pas à jour.
Ou, si vous souhaitez voir le journal de validation complet de la télécommande heroku, la seule façon dont je sais comment le vérifier est d'abord. git checkout heroku/master
vous donnera le hachage de validation actuel et le commentaire de validation: HEAD is now at <short commit hash>... <commit comment>
, et git log
vous donnera le reste de l'histoire.
La bonne réponse est en fait si simple. Vous n'avez rien à retirer, vous n'avez pas non plus à recourir aux hacks COMMIT_HASH (qui ne fonctionnent pas sur la pile Cedar). Il vous suffit de: git ls-remote <remote>
> git ls-remote heroku
ddaszxcewb585d3a3c00de816a197b14462791a3 HEAD
ddaszxcewb585d3a3c00de816a197b14462791a3 refs/heads/master
Vous pouvez maintenant vouloir heroku releases
et vous verrez comme 5 commits. un début au moins.
qu'en est-il de
git log heroku/master
si vous avez rencontré la situation, comme je viens de le faire, où un collègue a restauré votre application heroku à une version qui ne s'affiche pas dans heroku releases
parce qu'ils ne gardent qu'une trace de 2 versions ... la vérification de la méthode heroku/master n'aidera pas, car HEAD n'est plus ce qui est déployé.
les sans-papiers à la rescousse:
$ heroku console "ENV['COMMIT_HASH']"
"12abcdef"