2009-07-29 87 views
22

我的一个5个月的项目已接近尾声,并且作为毫无意义的统计数据的粉丝,
我想知道自从存储库开始以来提交了多少次提交。git仓库提交的数量

我该如何发现?

注:

  1. 我知道有没有一个库,我在当地的版本只是有兴趣。

  2. 这在颠覆中是微不足道的,因为修订标识符 似乎是提交编号。

+6

其实,SVN修订版只保证是单调的,而不是连续的。对于一个版本库来说,它包含了6,8,25,16,23,42个修订版,这是完全正确的。 – 2009-07-29 13:14:15

回答

40

要获得提交的关于当前分支的数量:

 
git log --pretty=oneline | wc -l 

更完整的计数,使用:

 
git rev-list --all | wc -l 

见git的转速名单的细节docmentation指定要计数的对象。

这是很有诱惑力的尝试类似:

 
find .git/objects -type f | wc -l 

但这不算包装对象。最好坚持使用git rev-list。

+1

谢谢,git guru。我知道这不是第一个wc -l解决方案,但是这个看起来在当前分支的事实很好理解。 – 2009-07-29 11:00:45

+1

当然,你可以计算一些修改,例如, “git rev-list v0.9 .. | wc -l”。还有git-shortlog(请参阅它的文档)。 – 2009-07-29 14:54:16

6

有可能是一个更优雅的方式来做到这一点,但我会运行:

git log --pretty=oneline | wc -l 
2

只要运行“gitk”。它还会显示屏幕上的提交数量。

3

其他人已经发布了最简单的答案,但这里有几个选项可能也是有趣的。

Easy Git是Git的一个简单,轻量级的包装器(单文件perl脚本)。它添加到Git的一个很好的功能是一个“info”命令(运行:eg info),它提供了一些有关存储库的很好的信息,包括提交数,文件,目录,贡献者和最大文件。

GitStats是另一种工具,可以为您提供各种有关存储库的统计信息。检出他们的examples,例如an analysis of the git project

13
 

$ git shortlog -s  # or git shortlog -s -n 
    2 Adam Jacob 
    2 Matt Ray 
    19 Mike Adolphs 
    151 John Jackson 
    36 jtimberman 
    2 mattray 
    4 bkilroy 
相关问题