使用RBTool自动提交code review请求

前言

让我们回想一下手工提交review请求的过程:

  1. 首先得用 svn diff > filename.diff 生成diff文件。
  2. 然后输入review board的网址,可能是 rb.companyname.com
  3. 然后需要输入你的账号密码进行登录验证。
  4. 然后你需要填写你的svn repository 地址,然后上传diff文件。
  5. 然后你进到review请求的详细页面,填写summary, description, test-done, group和people项,而通常情况下,你的group是固定的,review你的people也就是那么几个人来回变。
  6. 最后你填完这些内容,点击 publish 来发布你的review请求。

RBTool安装和配置

是不是觉得很烦索?其实review board官网提供了一个RBTool,
可以帮你把这些步骤全部省掉,一切只需要在命令行敲一条 post-review指令即可。
很心动吧?让我们来看看如何安装RBTool。

首先需要你的电脑里安装了git, python, Mac同学表示这些东西都安全装预好了,如果是老版本的mac,也可以自行下载安装。Git的windows/mac/linux版本下载地址是:http://git-scm.com/ 。

下载安装完git后,输入

git clone git://github.com/reviewboard/rbtools.git
cd rbtools
sudo python setup.py install

OK,post-review已经安装好了。 然后你需要小小配置一下,在自己svn项目的根目录下,建立:.reviewboardrc 文件。在文件中输入:

REVIEWBOARD_URL = "http://rb.yourcompany.com"
REPOSITORY = "https://dev.yourcompany.com/svn/xxxx"

这2行分别代表你们公司的review board网址和svn根目录地址。 ### RBTool的使用 OK,以后你要提交review请求,只需要在项目根目录下输入 post-review 即可。第一次需要输入登陆review board的用户名密码,post-review工具会记住密码,以后就不用输入了。post-review默认会将你当前svn目录下的diff修改提交到review board上。你也可以加上一些指定的参数来指定group, people, description等等。比如我就写了一个小脚本,将post-review改成:

post-review --target-groups=mygroup --target-people=friendname1,friendname2

post-review还可以更新以前提交的diff,方法是用 -r 指定review number即可。具体的可以用post-review –help来查看详细信息。也可以去review board官网查看详细的说明:http://www.reviewboard.org/docs/codebase/dev/getting-started/#rbtools

如果是用git svn管理的项目,另外加上参数:–parent git-svn 即可。

赶快用RBTool工具提高你的工作效率吧~

使用RBTool自动提交code review请求的更多相关文章

  1. IDEA工具java开发之 常用插件 git插件 追加提交 Code Review==代码评审插件 撤销提交 撤销提交 关联远程仓库 设置git 本地操作

    ◆git 插件 请先安装git for windows ,git客户端工具 平时开发中,git的使用都是用可视化界面,git命令需要不时复习,以备不时之需 1.环境准备 (1)设置git (2)本地操 ...

  2. 如何搭建开源code review gerrit服务器

    搭建环境:Ubuntu 14.04 一.环境准备 1.Java环境 gerrit依赖,用于安装gerrit环境. 下载:jdk-7u79-linux-x64.tar.gz http://www.ora ...

  3. 关于Gerrit code review 介绍与安装

    代码审核(Code Review)是软件研发质量保障机制中非常重要的一环,但在实际项目执行过程中,却因为种种原因被Delay甚至是忽略.在实践中,给大家推荐一款免费.开放源代码的代码审查软件Gerri ...

  4. 漫谈Code Review的错误实践

    从刚开始工作时到现在,已经写了7年的代码,大部分代码都被人review过,自己也review了很多人的代码.在上一家公司的时候,我负责的一轮面试是专门进行Code Review的练习和经验谈. 通过在 ...

  5. 如何在团队中做好Code Review

    一.Code Review的好处 想要做好Code Review,必须让参与的工程师充分认识到Code Review的好处 1.互相学习,彼此成就 无论是高手云集的架构师团队,还是以CURD为主的业务 ...

  6. 【转载】 漫谈Code Review的错误实践

    原文地址: https://www.cnblogs.com/chaosyang/p/code-review-wrong-practices.html ------------------------- ...

  7. Code Review 五问五答

    Code Review 是什么? Code Review即代码审查,程序猿相互审核对方的代码. Code Review能获得什么好处? 提高代码可维护性 你写的代码不再只有编译器看了,你得写出审核人能 ...

  8. Code Review最佳实践

    我一直认为Code Review(代码审查)是软件开发中的最佳实践之一,可以有效提高整体代码质量,及时发现代码中可能存在的问题.包括像Google.微软这些公司,Code Review都是基本要求,代 ...

  9. Code Review最佳实践(转)

    我一直认为Code Review(代码审查)是软件开发中的最佳实践之一,可以有效提高整体代码质量,及时发现代码中可能存在的问题.包括像Google.微软这些公司,Code Review都是基本要求,代 ...

随机推荐

  1. 43. 动态规划求解n个骰子的点数和出现概率(或次数)[Print sum S probability of N dices]

    [题目] 把N个骰子扔在地上,所有骰子朝上一面的点数之和为S.输入N,打印出S的所有可能的值出现的概率. [分析] 典型的动态规划题目. 设n个骰子的和为s出现的次数记为f(n,s),其中n=[1-N ...

  2. 在SQLServer处理中的一些问题及解决方法 NEWSEQUENTIALID()

    一.DBLINK性能问题select * from dbsource.dbname.dbo.table where guid in (select guid from tablechangelog w ...

  3. Python多线程(2)——线程同步机制

    本文介绍Python中的线程同步对象,主要涉及 thread 和 threading 模块. threading 模块提供的线程同步原语包括:Lock.RLock.Condition.Event.Se ...

  4. canva实践小实例 —— 马赛克效果

    前面给大家带来了操作像素的API,此时此刻,我觉得应该配以小实例来进行进一步的说明和演示,以便给大家带来更宽广的视野和灵感,你们看了我的那么多的文章,应该是懂我的风格,废话不多说,进入正题: 这次给大 ...

  5. async/await 异步编程

    前言 最近在学习Web Api框架的时候接触到了async/await,这个特性是.NET 4.5引入的,由于之前对于异步编程不是很了解,所以花费了一些时间学习一下相关的知识,并整理成这篇博客,如果在 ...

  6. Xamarin Studio支持TypeScript开发

    之前谈到"TypeScript的崛起",今天推荐的文章又再次支持了这一观点--Xamarin Studio也开始支持TypeScript的开发. 一个语言是否能够崛起,很重要的一个 ...

  7. android操作XML的几种方式(转)

    XML作为一种业界公认的数据交换格式,在各个平台与语言之上,都有广泛使用和实现.其标准型,可靠性,安全性......毋庸置疑.在android平台上,我们要想实现数据存储和数据交换,经常会使用到xml ...

  8. 拼接JSONStringer出现的不正确的情况。

    错误现象: 错误分析及其解答: JSONStringer可以直接嵌套JSONArray,JSONArray可以作为JSONStringer的值.我错误的原因是本质是:JSONArray存放的是JSON ...

  9. editplus利用正则表达式快速定位

    例如我要找到user_jj表保存数据的语句 做法:editplus选择正则表达式输入 user_jj.*save 就可以定位到:M('user_jj')->where(array('tgbz_i ...

  10. Android 生成和Pull解析xml

    一.单个对象生成xml 生成以下xml,该怎么生成呢? <?xml version='1.0' encoding='UTF-8' standalone='yes' ?> <accou ...