如果我有一个带有代表发行版本的标记的git存储库。
我怎么能得到两个标签之间的提交列表(如果可能的话,一个漂亮的格式)?
如果我有一个带有代表发行版本的标记的git存储库。
我怎么能得到两个标签之间的提交列表(如果可能的话,一个漂亮的格式)?
当前回答
FYI:
git log tagA...tagB
提供范围内的标准日志输出。
其他回答
比较当前分支和标签的最新提交:
git log --pretty=oneline HEAD...tag
如果您的团队使用描述性提交消息(例如。"Ticket #12345 - Update dependencies")在这个项目上,然后生成更新日志,因为最新的标签可以这样做:
git log --no-merges --pretty=format:"%s" 'old-tag^'...new-tag > /path/to/changelog.md
——no-merges从列表中省略合并提交 Old-tag ^指的是之前被标记的提交。如果您出于任何原因想要在列表底部看到带标记的提交,则此选项非常有用。(单引号只适用于mac OS上的iTerm)。
git log——pretty=oneline tagA…tagB(即三个点)
如果你只是想要从tagB而不是tagA可达的提交:
git log——pretty=oneline tagA..tagB(即两个点)
or
挖出
要将输出设置为您喜欢的漂亮格式,请参阅git-log的手册页。
例子:
git log --pretty=format:"%h; author: %cn; date: %ci; subject:%s" tagA...tagB
还要考虑这一点:
git range-diff tagA...tagB
来源:https://git-scm.com/docs/git-range-diff