如果我在Git中有一些标签,我可以使用以下命令:
git describe --tags | awk -F- '{ print $2 }'
要显示自上个标签以来的提交次数。是否有一种只使用git命令就可以获得这个数字的方法?
如果我在Git中有一些标签,我可以使用以下命令:
git describe --tags | awk -F- '{ print $2 }'
Git黑魔法:
git rev-list --count `git describe --abbrev=0 --tags` HEAD
git rev-list --count `git describe --abbrev=0 --tags`..HEAD
git log <RANGE> --pretty=oneline | wc -l
会起作用,但比rev-list慢很多。
hg log -l 1 -T"{latesttagdistance}\n"
进行比较。 - Lazy Badger<tag>..HEAD
,其中<tag>
来自您的git describe
技巧。 - torek
print $3
吗?注意:我的上一个标签也有一个破折号,可能是为什么这与你的结果不同的原因。 - scrowlergit describe
的内部计数算法非常复杂。但是,如果您知道一些特定的标记,可以使用git rev-list --count <tag>..
(即计算从HEAD
可达但不从给定的<tag>
可达的修订次数)来获得相当接近,或者足够接近的结果。这在合并存在时会产生误导性的值;--first-parent
可能有所帮助,但也可能会有所损失。(这就是git describe
内部计数的复杂性所在。) - torekTAGNAME-COUNT_AFTER-gHASH
。 - Lazy Badgergit describe
为你生成它! - torek