ReviewBoard进行Code Review

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ReviewBoard进行Code Review相关的知识,希望对你有一定的参考价值。

一、标题

  • Review Board 简介
  • Code Review流程
  • 手动创建Review请求
  • Tao-ReviewBoard插件
  • Code Review评审流程
  • Code Review权限控制

二、Review Board简介

  • 代码审查(Code Review)不但可以提高质量,而且还是一个知识共享和指导的极好的手段。不幸的是,准备工作的辛苦和工具支持的缺乏让代码审查很容易被延至“稍后再议”。Review Board的目标便是改变这一现状,它所提供的应用程序可以支持代码审查流程。一些应用程序的特性包括:
  1. 详细的审查请求将所有代码审查所需要的信息都集合起来,包括代码的修改和屏幕截图
  2. 一个支持将评论直接写至对应的代码行的diff查看器
  3. 上下文讨论
  4. 一个汇总审查和被审查需求的面板 
  • Review Board在审查补丁(Patch)方面表现完美。一个叫做“提交审查”的工具被用来和SCM系统进行连接(当前支持SVN、CVS、Perforce、Git和Mercurial等),可以允许你请求一个将被提交的修改的审查。

三、Code Review 操作流程

技术分享

四、手动创建Review请求

1、命令行创建Diff(也可以用tortoisesvn create patch)

技术分享

2、登录reviewboard创建review request

 技术分享

 五、手动创建Review请求(cont.)

1、填写必要信息后publish review request

技术分享

六、Tao-ReviewBoard插件

1、Tao-ReviewBoard是在eclipse上开发的一款ReviewBoard代码评审插件,它很好的解决了安装和操作等问题,使reviewboard的使用更加方便。该插件目前支持ReviewBoard1.6及以上版本。现在,你已经不再需要在本地安装任何其它额外软件(甚至无需安装Subversion),也不再需要记住任何脚本和命令;在Eclipse中安装ReviewBoard插件后,提交和更新Request的操作将非常便捷,你只需要选中需要提交的代码或目录,然后右键Team进行相关操作即可完成Request的提交和更新(且支持Pre-Commit和Post-Commit方式)。Tao-ReviewBoard插件后续还将提供展示diff等诸多功能。

2、Tao-ReviewBoard用户手册下载地址:猛击这里

3、在线安装:安装地址: 猛击这里 (安装详细步骤可查看文档,安装前先必须安装subclipse)

七、Tao-ReviewBoard插件(cont.)安装步骤

 1、项目->右键->Pre-Commit Request to ReviewBoard

技术分享

2、填写代码评审表单

①情况一:创建新的代码评审请求

技术分享

②情况二:更新已有代码评审请求

技术分享

3、提交成功

技术分享

备注:点击链接进入ReviewBoard

八、Code Review评审流程

1、代码评审”提交成功后,相关人员收到提醒邮件

代码评审请求创建完成后,“请求提交人”“评审人(>=1)”“评审组成员(>=1)”都会收到提醒邮件。

技术分享

备注:代码评审请求,从“创建”、“评审”到“关闭”的整个过程,相关人员都收到通知邮件

2、Code reviewer进入diff链接,进行code review, 如果对某行有意见,鼠标对准某一行点击即可出现comment框后填写意见:

技术分享

 3、此时code request发布者会收到comment的邮件,根据comment内容进行代码修改后重新update diff后点击FIxed;若不同意reviewer的意见则可以填写comment后,如果reviewer接受这种解释,则可以 点击Drop

技术分享

技术分享

4、如果code reviewer 对代码没有任何意见了,则可以ship it表示该review已经通过评审:

 技术分享

 

以上是关于ReviewBoard进行Code Review的主要内容,如果未能解决你的问题,请参考以下文章

PYTHON代码审查工具

PYTHON代码审查工具

使用RBTool自动提交code review请求

ReviewBoard pip 安装失败

Centos6.7 安装ReviewBoard 问题记录

公司常用的Project管理工具