我想获得Git存储库的提交数量,有点像SVN的修订号。

我们的目标是将其用作唯一的、递增的构建号。

我目前这样做,在Unix/Cygwin/msysGit上:

git log --pretty=format:'' | wc -l

但我觉得它有点过时了。

有更好的办法吗?如果我实际上不需要wc甚至Git,那么它就可以在裸Windows上工作,那就太棒了。只要读取一个文件或目录结构…


当前回答

Git shortlog是一种方法。

其他回答

git rev-parse——短头

如果您正在为提交寻找一个唯一且可读性强的标识符,那么git describe可能正是适合您的东西。

你可以用:

git shortlog -s -n

结果:

 827  user one
    15  user two
     2  Gest 

像这样使用git shortlog

git shortlog -sec

或创建别名(用于基于ZSH的终端)

#按提交量显示贡献者 别名gcall="git shortlog -sn"

要获得两个分支(如feature分支和目标使用分支)之间不同的提交数:

Git rev-list——count feature_branch..target_branch