折腾了半天的Review Board,终于能提交请求了。因为期间的折腾过程特别曲折,所以记录一下。
因为是全公司要推广CodeReview,所以团队进行了一次简单培训,简单说了下Review Board的安装和使用,不过是基于windows和eclipse的,用的是一个eclipse的插件tao-reviewboard,安装和配置都比较简单。因为移到linux和idea的开发环境已经好久了,所以我只能自己折腾了。
google了下,发现有基于idea的reviewboard插件,装上试了下,跟tao-reviewboard比起来,可以说是非常简陋,而且提交review请求的时候,报了一堆的错误。以为是自己的配置有问题,于是看着Review Board的文档,把配置文件~/.reviewboardrc重新检查了下,文件的内容如下
1 2 3 4 5 |
|
配置完之后,继续报错,报的是
1
|
|
google无结果,简单看了源码,还得了解idea的插件开发的一些知识,暂时没功夫,于是放弃。
试着装了下eclipse,发现tao-reviewboard是依赖于subclipse的,这个东西以前就装过,没有成功,这回试了下,果然还是不成功。同事说需要编译相应版本的svn客户端,觉得单独为个CodeReview再把eclipse折腾半天,不值得,于是放弃。
又去啃Review Board的文档了,Review Board提供了一个命令行的工具post-review,这个工具是python写的,看到是python写的就很有亲切感。安装很简单,执行下面的命令(之前已经有了python的环境,没有的可能还得提前装python和easy_install)
1
|
|
提交review请求的命令也很简单
1
|
|
执行上面的命令,报了206的错误。提示
The repository path specified is not in the list of known repositories
于是,加上-d参数,打印debug信息,觉得可能repository没加到Review Board Server里面,但是其他人都可以提交review,于是试着进到代码目录,在代码当前目录提交review请求,没想到竟然pass了这个问题,不过马上又报了一个207的错误。提示
The repository path specified is not in the list of known repositories
这个问题,试了好多办法都不行,于是只能调试源码,下了源码,一路输出debug信息,怀疑是diff文件的问题。看了下其他同事提交的diff文件,他们的diff文件里开头,代码文件的路径是相对路径,而我生成的竟然是绝对路径,而造成这一问题的原因就是svn.py下面这一句,把这句注释掉,替换掉RBTools-xxx.egg这个文件里面的相应文件
1
|
|
试了下,终于OK了。post-review的那些参数太繁琐而且又长,以后有时间写个程序自己定制下。