如何按时间顺序列出 git标记? (最近的标签)
git tag
仅显示字母顺序。
答案 0 :(得分:15)
正确答案是:
git tag --sort=-taggerdate
taggerdate
是适当的字段。根据{{3}}:
前缀
-
按值的降序排序。
git tag man page使用与git tag
相同的排序键,这是记录排序键的位置。
答案 1 :(得分:14)
在git 2.3.3中我可以这样做以按日期排序:
git tag --sort version:refname
答案 2 :(得分:9)
简单易记:
git log --tags --decorate --simplify-by-decoration
更容易阅读结果:
git log --tags --simplify-by-decoration --pretty="format:%d - %cr"
答案 3 :(得分:0)
我发现有一个很好的单线程,它会显示日期标记信息,标记作者并且在列安排方面做得很好。
git for-each-ref --sort=taggerdate --format '%(tag)_,,,_%(taggerdate:raw)_,,,_%(taggername)_,,,_%(subject)' refs/tags \
| awk 'BEGIN { FS = "_,,,_" } ; { t=strftime("%Y-%m-%d %H:%M",$2); printf "%-20s %-18s %-25s %s\n", t, $1, $4, $3 }'
输出将如下所示:
...
2015-08-03 10:56 v1.51 Release v1.51 FirstName LastName
2015-08-10 16:12 v1.52 Release v1.52 Jane Doe
归功于此site
答案 4 :(得分:0)
使用fastcgi_param REMOTE_USER $http_X_User;
进行排序时支持的类型是:
git tag
- 按字典顺序排序refname
或version:refname
- 根据版本问题的解决方案如下:v:refname
还有许多与git标记相关的有用命令,请务必查看this article以获取更多详细信息。
答案 5 :(得分:-2)
试试这个
git log --tags --decorate --simplify-by-decoration | grep ^commit|grep tag|sed -e 's/^.*: //' -e 's/)$//'