【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>>
我想得到我的Git存储库的提交数量,有点像SVN版本号。
目标是将其用作唯一的递增构建号。
我目前在Unix / Cygwin / msysGit上喜欢这样:
git log --pretty=format:'' | wc -l
但我觉得这有点像黑客。
有没有更好的方法呢? 如果我实际上不需要wc
甚至Git,那将是很酷的,所以它可以在裸Windows上运行。 只需读取文件或目录结构......
#1楼
如果您只是使用一个分支,例如master,我认为这会很有效:
git rev-list --full-history --all | wc -l
这只会输出一个数字。 您可以将其别名为
git revno
使事情变得非常方便。 为此,请编辑.git/config
文件并将其添加到:
[alias]
revno = "!git rev-list --full-history --all | wc -l"
这不适用于Windows。 我不知道该操作系统相当于“wc”,但编写一个Python脚本来为你做计数将是一个多平台的解决方案。
#2楼
Git shortlog是获取提交详细信息的一种方法:
git shortlog -s -n
这将给出作者姓名后面的提交数量。 -s选项删除作者所做的每个提交的所有提交消息。 如果您还想查看提交消息,请删除相同的选项。 -n选项用于对整个列表进行排序。 希望这可以帮助。
#3楼
git rev-list HEAD --count
git rev-list <commit>
:通过跟随给定提交的父链接(在本例中为HEAD )来列出可以访问的提交。
--count
:打印一个数字,说明将列出多少次提交,并禁止所有其他输出。
#4楼
git rev-parse --short HEAD
#5楼
一个简单的方法是:
git log --oneline | wc -l
oneline
确保。
来源:oschina
链接:https://my.oschina.net/stackoom/blog/3146354