Code Review工具

Code Review中文应该译作“代码审查”或是“代码评审”,这是一个流程,也是编码实现中重要的一个环节。

 

1、Review-Board

详情参考InfoQ的 Review Board——在线代码审查工具

主要特色: pre-commit审查, 避免不成熟代码对SVN的污染!

用一个场景来描述:

Raywill所在的团队使用SVN来管理源码,某日他对kernel.c和const.h中的部分代码就行了修改,但是不确定是否正确无误,于是希望团队里的其他人帮助他审查(review)修改的代码在某些团队,有人使用svn commit将不成熟代码提交到svn,供他人update后review,这是很不良的做法。

 

当前,其支持这些代码版本管理软件:  SVN , CVS,  Perforce ,  Git ,  Bazaar , 和 Mercurial .

在Review Board的世界里,Raywill使用review-board提供的review功能,在命令行下敲入

 

bash#post-review kernel.c const.h
 

它对代码的修改就立即提交到了Review-Board,并给出了一个online的review地址,例如http://localhost/review/123234,点击进入该地址,就可以在线添加ChangeLog,说明你做了哪些修改。如果团队比较大,还可以指定Reviewer。如下图所示:


 

团队中的所有人会收到一封review request的邮件,感兴趣的就点击邮件中附带的链接进入到review页面,点击Diff就可以看到全部代码修改(review-board与svn无缝整合了,post-review工具会读取svn信息,所以在线的diff信息与Subversion中的可视化diff效果相似),如下图所示


 

当reviewer觉得代码可行,可以点击Ship It表示许可代码正式提交到SVN,如果不满意,可以直接在diff界面中添加修改意见。这些修改意见会再次通过邮件反馈给全组。在线Review意见的视觉效果如下:


2、Jupiter

    提供了代码行级别的评审批注功能,方便评审参与人了解具体是哪些行代码存在问题。同时,它也比较 符合常规的评审流程,被评审人提供待审代码->评审人线下提出个人意见->组织讨论会讨论每个人提出的意见并确定问题及解决方案->被 评审人rework修改代码->评审人查看修改情况。

Jupiter支持在一个项目中的多次评审,多人协同参与评审,支持多种配置库如SVN、CVS等,支持简单的评审流程,支持问题跟踪。
Jupiter提供的这些简单的功能,已经完全可以胜任常规的代码评审需要,作为常规评审比较合适。并且评审人和被评审人都可以通过Eclipse操 作,对于我们程序员来说,很方便,大家天天都要对着Eclipse,Jupiter可以让代码评审成为编码的一部分工作而又不增加评审工作量。

 


部分摘自网络。

 

原文链接:加载失败,请重新获取