在Git中获取最新标签的最简单方法是什么?

git tag a HEAD
git tag b HEAD^^
git tag c HEAD^
git tag

输出:

a
b
c

我应该写一个脚本来获得每个标记的日期时间并比较它们吗?


当前回答

Git描述——标签

返回当前分支能看到的最后一个标记

其他回答

如果你需要一个获得当前分支上最新标签名称(通过标签日期)的一行程序:

git for-each-ref refs/tags --sort=-taggerdate --format=%(refname:short) --count=1 --points-at=HEAD

我们使用它来设置设置中的版本号。

输出的例子:

v1.0.0

也适用于Windows。

git describe --abbrev=0 --tags

如果你没有看到latest标签,请确保在运行之前获取origin:

git remote update

要获得最新的标签(后面的示例输出):

git describe --tags --abbrev=0   # 0.1.0-dev

要获得最近的标签,以及被标记对象顶部的额外提交数&更多:

git describe --tags              # 0.1.0-dev-93-g1416689

要获取最近的带注释的标签:

git describe --abbrev=0
git tag --sort=committerdate | tail -1

您可以查看一下git describe,它所做的事情与您所要求的类似。