使用Mercurial,我如何衡量个人贡献?

Pau*_*aul 15 mercurial metrics measurement

我的团队正在使用Mercurial,我想知道每个团队成员的相对贡献.我知道我们无法通过代码行来衡量生产力,但我想看看每个人是否至少贡献了一些东西,即使它后来被其他人覆盖了.因此,我不仅希望看到谁负责当前版本(Mercurial annotate),而是通过所有修订递归执行此操作,理想情况下使用可轻松可视化或转储到电子表格中的输出.

有小费吗?

ang*_*son 22

有一个完全为此的扩展名churn,它与Mercurial捆绑在一起,但不会自动启用.您可以在此处找到更多信息:ChurnExtension.

在mercurial.ini文件中[extensions],添加以下内容:

[extensions]
churn=

然后,查看存储库的流失,只需执行以下操作:

hg churn

这将输出类似的内容(这是Noda-Time项目):

[C:\Dev\VS.NET\Noda-Time-docs] :hg churn
skeet@pobox.com              296444 *************************************************************************************************************
james.keesey@gmail.com       203877 ***************************************************************************
James Keesey                  80466 ******************************
dmitry.bulavin@gmail.com      25552 *********
Dmitry Bullavin               17657 ******
martinho.fernandes@gmail.com  16325 ******
Dmitry Bulavin                 4273 **
james.keesey                   2650 *
matt.scharley                   768
configurator                    450
lasse@vkarlsen.no                64
TeamCity@Nordrassil               2


Dar*_*ius 8

Churn完成了这项工作,但请注意,如果用户经常移动文件,他将会有大量更改的行.我刚做了一个测试,结果如下:

C:\Projects\personal\test>hg churn
darius.damalakas@gmail.com     10 *****************************************

C:\Projects\personal\test>hg mv a.a b.b
moving a.a to b.b

C:\Projects\personal\test>hg commit -m "moving 10 lines to another location"
b.b
committed changeset 1:c54200557152

C:\Projects\personal\test>hg churn
darius.damalakas@gmail.com     30 *****************************************
Run Code Online (Sandbox Code Playgroud)

请注意,我只创建了10行,但是为了移动文件,我有20行更改.这并没有传达出好的画面.