在git中给出提交的提交信息

我需要一个pipe道命令来打印一个给定提交的提交信息 – 没有什么更多的了。

这不是“pipe道工”,但它会做你想要的:

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

如果你绝对需要一个“pipe道”命令(不知道为什么这是一个要求),你可以使用rev-list

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

尽pipe除了提交消息外, rev-list也会打印出commit sha(在第一行)。

git showgit log更像一个pipe道命令,并且具有相同的格式选项:

 git show -s --format=%B SHA1 

这将给你一个非常紧凑的所有消息列表在任何指定的时间。

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

没有pipe道,但我有这些在我的.gitconfig:

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

这是“最后的总结”和“最后的信息”。 您可以提交一个提交来获取该提交的摘要或消息。 (我使用1.7.0.5所以没有%B。)