66

我正在尝试在 Git 中使用标签进行版本管理——我为每个版本创建一个标签。我希望能够通过列出自一个标签或两个标签之间的每个提交的评论标题来创建发行说明。我似乎找不到任何方法来做到这一点。

4

5 回答 5

82

如果您的标签已命名LastReleaseNextRelease然后执行

git log --pretty=format:%s LastRelease..NextRelease .

于 2010-05-31T05:57:16.040 回答
39

显示自 TAG 到当前头部的提交:

git log TAG..HEAD

两次提交之间:

git log TAG..TAG

要格式化日志输出,请查看git log 的 Pretty formats 部分

于 2010-05-31T05:49:32.163 回答
13

你应该调查一下git shortlog。这是一个输出示例:

$ git shortlog
Al Jones (512):
      Added to .gitignore file
      Updated user model

Bob Smith (222):
      Minor tweak to view
      Updated accounts controller

Charles West (321):
      Started specs for user model
      Finished specs for user model

对于您的情况,您需要运行git shortlog LastRelease..NextRelease

于 2012-12-18T02:59:07.270 回答
3

我将 Dominic 和 Igor 的答案结合在一起,按时间顺序将 2b150c4 中所有提交的标题返回到当前 HEAD 并将其打印到终端(echo添加是因为git log没有换行最后一行)。

git log --pretty=format:%s 2b150c4..HEAD --reverse | cat; echo
于 2017-02-16T00:01:42.980 回答
1

为了获得带有特定(已知)消息的提交的详细信息,我首先调用git log --oneline带有消息的 commints 概述,然后通过识别的 SHA 查看git show <SHA>提交git log --stat -p <SHA>

于 2018-04-14T09:15:37.330 回答