有没有一种方法可以让git列出在两个提交之间添加的所有标签?也就是说,只显示出在A点和B点之间出现的标签。
您可以使用以下选项与 git log
命令:
git log tagA...tagB --decorate --simplify-by-decoration
--decorate
显示提交旁边的标签名称,--simplify-by-decoration
只显示已被打了标签的提交。
如果你只需要在 commit1
和 commit2
之间的标签名称列表(按照时间倒序),你可以结合使用 git log
,xargs
和 git tag --points-at
:
git log commit1..commit2 --simplify-by-decoration --format=format:%h | xargs -L1 git tag --points-at
commit1
和 commit2
之间的所有标签(不包括 commit1
本身)。git log --simplify-by-decoration --pretty=format:%D commit1..commit2 | \
grep -o 'tag: [^,)]\+' | sed 's/^tag: //'
< p > git log ...
命令列出指定范围内每个提交所引用的分支和标签。随后的命令仅解析标签。
git log commitA...commitB --decorate --simplify-by-decoration
。 - Robert Gomezgit log --decorate --simplify-by-decoration tagA...tagB
,不要相信你在互联网上读到的一切。 - Paul Draper