web-dev-qa-db-ja.com

HerokuでリモートGitリビジョンを表示する方法

Herokuにデプロイするには、git Push heroku master。しかし、どの改訂版をherokuにプッシュしたかを確認するにはどうすればよいですか? (最近のバージョンをプッシュした場合、私はしばしば疑っています)

それに慣れていない人のために、Herokuの作成スクリプトは、プッシュ先のリモートgitリポジトリを生成します。プッシュすると、コードは魔法のようにデプロイされます。

Herokuは、次の形式でローカルリポジトリにリモートリポジトリを追加します。

$ git remote add heroku [email protected]:appname.git

Herokuのマニュアルの詳細 "Gitを使用したデプロイ"

質問:Herokuリポジトリで最新バージョンを確認するにはどうすればよいですか?

82

プッシュしたばかりで最新であることを確認したい場合は、git remote show herokuを実行するだけで、次のような出力が表示されます。

* 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)

最後にある(up to date)は、最新でない場合は(fast forwardable)に置き換えられます。

または、herokuリモートの完全なコミットログを表示する場合、最初に確認する方法しかありません。 git checkout heroku/masterは、現在のコミットハッシュとコミットコメントを提供します:HEAD is now at <short commit hash>... <commit comment>、およびgit logは、ストーリーの残りの部分を提供します。

59
Brock Batsell

正しい答えは実際にはとても簡単です。何もチェックアウトする必要はありません。また、COMMIT_HASHハック(Cedarスタックでは機能しません)に頼る必要もありません。必要なことは次のとおりです:git ls-remote <remote>

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

heroku releasesそして、5回のコミットが表示されます。少なくともスタート。

44
pjammer

どう?

git log heroku/master
23
eweb

私がちょうどやったように、同僚がheroku releasesに表示されないリリースに同僚が2つのリリースのみを追跡するためにリリースするという状況に陥った場合... HEADはもはやデプロイされていないため、heroku/masterメソッドのチェックアウトは役に立ちません。

救助に文書化されていない:

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