web-dev-qa-db-ja.com

指定されたコミットのコミットメッセージをGitに出力します

特定のコミットのコミットメッセージを出力するための配管コマンドが必要です。それ以上でもそれ以下でもありません。

201
Mark Probst

それは「配管」ではありませんが、まさにあなたが望むことをします:

$ git log --format=%B -n 1 <commit>

「配管」コマンドが絶対に必要な場合(それが要件である理由がわかりません)、rev-listを使用できます。

$ git rev-list --format=%B --max-count=1 <commit>

rev-listは、コミットメッセージに加えて、コミットshaも(最初の行に)出力します。

278
mipadi

git showgit logよりも配管コマンドであり、同じフォーマットオプションがあります。

git show -s --format=%B SHA1
116
CharlesB

これにより、指定した時間のすべてのメッセージの非常にコンパクトなリストが表示されます。

git log --since=1/11/2011 --until=28/11/2011 --no-merges --format=%B > CHANGELOG.TXT
15
Harshniket Seta

配管ではありませんが、.gitconfigにこれらがあります:

lsum = log -n 1 --pretty=format:'%s'
lmsg = log -n 1 --pretty=format:'%s%n%n%b'

それが「最後の要約」と「最後のメッセージ」です。コミットを提供して、そのコミットの要約またはメッセージを取得できます。 (1.7.0.5を使用しているため、%Bはありません。)

13
bstpierre

これにはショートログを使用します。

$ git shortlog master..
Username (3):
      Write something
      Add something
      Bump to 1.3.8 
3
mja

使い始めました

git show-branch --no-name <hash>

より速いようです

git show -s --format=%s <hash>

両方とも同じ結果になります

1
nos