我想获得Git存储库的提交数量,有点像SVN的修订号。
我们的目标是将其用作唯一的、递增的构建号。
我目前这样做,在Unix/Cygwin/msysGit上:
git log --pretty=format:'' | wc -l
但我觉得它有点过时了。
有更好的办法吗?如果我实际上不需要wc甚至Git,那么它就可以在裸Windows上工作,那就太棒了。只要读取一个文件或目录结构…
我想获得Git存储库的提交数量,有点像SVN的修订号。
我们的目标是将其用作唯一的、递增的构建号。
我目前这样做,在Unix/Cygwin/msysGit上:
git log --pretty=format:'' | wc -l
但我觉得它有点过时了。
有更好的办法吗?如果我实际上不需要wc甚至Git,那么它就可以在裸Windows上工作,那就太棒了。只要读取一个文件或目录结构…
当前回答
你可以用:
git shortlog -s -n
结果:
827 user one
15 user two
2 Gest
其他回答
像这样使用git shortlog
git shortlog -sec
或创建别名(用于基于ZSH的终端)
#按提交量显示贡献者 别名gcall="git shortlog -sn"
要将其转换为变量,最简单的方法是:
export GIT_REV_COUNT=`git rev-list --all --count`
你可以用:
git shortlog -s -n
结果:
827 user one
15 user two
2 Gest
如果您正在为提交寻找一个唯一且可读性强的标识符,那么git describe可能正是适合您的东西。
你可以试试
git log --oneline | wc -l
或者列出存储库中贡献者所做的所有提交
git shortlog -s