我想获取我的 Git 存储库的提交次数,有点像 SVN 版本号。
目标是将其用作唯一的,递增的内部版本号。
我目前在 Unix / Cygwin / msysGit 上确实喜欢这样:
git log --pretty=format:'' | wc -l但是我觉得这有点 hack。
有更好的方法吗?如果我实际上不需要wc甚至 Git,那将很酷,因此它可以在裸机上运行。只需读取文件或目录结构...
要获取修订的提交计数( HEAD , master ,提交哈希):
git rev-list --count <revision>要获取所有分支的提交计数:
git rev-list --all --count我建议不要将其用作构建标识符,但是,如果必须这样做,最好将计数用于构建的分支。这样,同一修订版将始终具有相同的编号。如果将计数用于所有分支,则其他分支上的活动可能会更改该数字。
git shortlog是一种方法。
git rev-list HEAD --count
git rev-list <commit> :列出通过遵循给定提交的父链接可到达的提交(在本例中为HEAD )。
--count :打印一个数字,说明将列出多少个提交,并取消所有其他输出。