StatCVS提供了对CVS储存库活动的深入观察 - 编程入门网
图 1 所示:
图 1. Jikes 的 StatCVS 主报告页面 可以看到可用报告的分类:关于代码作者的一些统计数据、查看提交日志、 代码段的行,以及关于文件和目录大小的一些统计。 代码行 代码行图表如清单 2 所示,它可能非常有趣: 图 2. Jikes 一段时间内的代码行数 从这个图表中可以看出,代码最初是在 1999 年初导入的。从那以后,它增 长得非常稳定,一直到 2001 底,那时代码的数量开始略有下降。还有几次,新 的代码被引入或者旧的代码被重构出去,这些可以从代码行计数的急剧升降上表 现出来。从 2004 年开始,似乎没有加入太多代码,这可能表明 Jikes 已经成 熟到了某种程度,主要对它做些维护工作即可。 如果从主报告页上单击 Authors 链接,就可以看到数字和图表,它们指出每 个参与者贡献了多少代码,如图 3 所示: 图 3. 每个参与者的代码行数 StatCVS提供了对CVS储存库活动的深入观察(5)时间:2011-09-09 ibm很明显,ericb 和 shields 对 lion 负责的代码有所贡献,而其他参与者也 偶尔参与其中。注意,没有任何一个参与者从头到尾都参与了该项目。这个事实 清楚地证明:长期项目需要那些拥有良好变量名和干净设计的清晰代码。 偶尔,StatCVS 在生成报告时表现得更聪明。如果 CVS 储存库只有一个参与 者,那么主报告页上的链接只会写上“Author page for joe_smith”,而且不 会生成比较图表。这样 StatCVS 会运行得更快,报告页也会更整洁。 现在再来看一个参与者的活动图表。在主报告页面上,单击 Authors 链接可 以访问 Author Activity,如图 4 所示,图中显示了每个参与者是添加了文件 ,还是修改了文件: “代码行”仅仅是数字 代码行计数有多重要呢?时至今日,只有项目中的人才能说得清。请考虑以 下这些情况。只要加入一个很大的格式变化,使所有的 for和 while循环看起来 更整洁,就很容易增加代码的行数。项目中可能有大量自动生成的文件(例如, 语言语法分析程序),而这些文件都是由一个人签入的。项目可能是一个围绕算 术库构建的应用程序,虽然很小,但是非常复杂;UI 代码可能频繁变化,但库 的代码只会偶尔变化。图表虽然漂亮,但是不一定能够表现出来谁做的工作最多 。它仅仅是原始数据的图形化显示,需要人来诠释它。 图 4. 添加代码 vs. 修改代码 您可以看到,shields 添加了大多数代码,这在预料之中,因为这个人显然 是代码导入 CVS 之后的第一个维护者。同样,ericb 在项目启动之后几年之间 一直进行类似的工作,主要在修改文件。 提交日志 提交日志(Commit Log)仅仅是对模块做的全部修改的一个列表。这个报告 显示了谁做了修改,以及提交者在所做修改上附加的注释。而且,因为 Jikes 的储存库中有一个 ViewCVS 界面,运行 StatCVS 时还使用了一个 -viewcvs参 数,所以报告中包含了到已实际修改的源代码的链接。例如,在 2004 年 12 月 12 日,src/decl.cpp有一个改动。如果点击 decl.cpp,会 看到添加了一个 if语句,还有一个注释。图 5 显示了 ViewCVS 的一部分,展 示了两个文件版本之间的差异: 图 5. 一个具体的代码变化 还有其他一些报告:一个报告显示了平均文件大小,另外一个显示了如何通 过目录树分布代码,还有一个则显示了哪个文件的版本改动最多。Jikes 的整个 报告可以通过单击本文顶部或底部的 代码图标得到,也可从 下载小节得到。只要将它解压,并用浏览器打开 index.html,就可以看到这个 报告。 StatCVS提供了对CVS储存库活动的深入观察(6)时间:2011-09-09 ibm关于 Maven? 对于 Maven 用户来说,会高兴地听到 StatCVS-XML 有一个 Maven 插件,该 插件是 StatCVS 的扩展。这个插件是可定制的;它甚至提供了一些 |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |