我如何获得Git提交计数?

 ̄綄美尐妖づ 提交于 2019-12-23 18:43:39

【推荐】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

git rev-list <commit> :通过跟随给定提交的父链接(在本例中为HEAD )来列出可以访问的提交。

--count :打印一个数字,说明将列出多少次提交,并禁止所有其他输出。


#4楼

git rev-parse --short HEAD


#5楼

一个简单的方法是:

 git log --oneline | wc -l

oneline确保。

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!