关于github的pull requests,commits,issues,code reivew统计

Contributions

github将所有的改动行为称为contributions

包括commit,pr, code review,isssue,fork等等。

github有个叫活动概览(Activity overview)的功能,将contributions按照下面四个象限进行分类统计:

Commits

Pull requests

Code review

Issues

如下图:(https://github.com/geektcp

Commits

commits统计提交行为,如下4个条件中任意一个满足即可:

1、新建了仓库;

2、在自己建的仓库提交了代码(包括新增文件,编辑文件,删除文件,重命名文件,移动文件路径等);

3、fork了一个新仓库;

4、创建了一个pull request请求;

5、合并了其他人的代码Merge pull request

 

下面条件不会产生commits:

1、提交代码时,git配置信息不对(git config --global --list),比如user.name和user.email和实际账户没有完全对应;

2、在fork的仓库只提交了代码,没有做其他任何操作。此外及时是这个仓库的管理者也不会产生commits统计,只有创建者才有commits统计。

 

Pull requests

pull requests统计触发条件:

在fork的仓库提交了代码之后,创建了一个pull request请求之后。

 

Code review

 pull requests之后,在仓库的管理者界面会看到pr请求,管理者查看代码变更,点击review changes界面,必须填写备注说明后提交;

这时,仓库管理者产生了一个code review类型的contribution。

Issues

当用户在仓库的issues栏目下提出问题或者解决了别人提出的问题,都会产生了一个issues类型的contribution。

 

举例证明:

打开git地址,传入时间过滤参数:

https://github.com/geektcp?tab=overview&from=2020-01-01&to=2020-03-17

 

所有contributions总共:64+10+26+9+1+2+89+7+60+8+1+5+1+1=284

commits:                   64+89+60=213

create repositories:  10+7+8=25

pull requests:      26通过,1月份1pr要求切换分支合并,但没有操作,剩下5个pr,1个提交成,另外4个没有通过,实际pr:26+1=27,总共26+1+5=32

review: 9

issues: 1+2+1+2=5

 

象限统计:

Pull requests: 32/284=11.26%≈12%

Code reviews: 9/284=3.16%≈4%

Issues: 5/284=1.76%≈2%


Commits: (213+25)/284=83.8%≈84%  由于总数是100%,100%-12%-4%-2%=82%,

所以这里不会按commit的实际值计算,也不会往上浮动得到84%,而是从100%减去其他象限的比例得到。

 实际结果如下图:

 

posted @ 2020-03-15 19:53  狂奔的骆驼  阅读(1934)  评论(0编辑  收藏  举报