有一些标签:
first
second
third
fourth
我需要获取"second"(第三个)之前的标签。
git describe --abbrev=0 second^
git log $(git describe --abbrev=0 --tags $(git describe --abbrev=0)^)...$(git describe --abbrev=0)
使用任何你喜欢的排序方式来获取当前标签后面的下一个标签的替代解决方案:
git tag --sort=-creatordate | grep -A 1 second | tail -n 1
git tag --sort=-creatordate
按照创建时间从新到旧的顺序打印所有标签:"first second third fourth"。明智地选择排序选项。grep -A 1 second
过滤出 "second" 和其后面的一行,即 "third"。tail -n 1
从 "second third" 中打印最后一行,我们终于得到了 "third"。git for-each-ref --sort=-creatordate --format '%(refname:short)' refs/tags | sed -n '/second/{n;p;}'
git tag --sort=-creatordate | head -n 3 | tail -n 2
git describe --abbrev=0 --tags second^
。 - flksecond
。 - sw-enthusiast