您的位置:首页 > 其它

SVN+Reviewboard+rbtools在Windows环境下的配置指南

2015-01-20 15:36 155 查看
BUG 1:

rbt使用的python2.7。python2.7在中文windows环境下有一个大bug!


Python27\Lib\site-packages\RBTools-0.7-py2.7.egg\rbtools\utils\process.py文件中:
subprocess.Popen(command,
stdin=subprocess.PIPE,
stdout=subprocess.PIPE,
stderr=errors_output,
shell=False,
universal_newlines=translate_newlines,
env=env)

这里的env是windows系统的环境变量,(可能)因为我用的是中文系统(挫爆了),env中有的环境变量是unicode类型。我这里是环境变量"LANGUAGE"和"LA_ALL"俩unicode类型的。而这个unicode类型正是不能被Popen识别!!!!!

在网上查了一下,有人说可以升级一下python或者自己转一下码。我采取了简单粗暴的方法,直接把unicode的环境变量给删了。

if env.has_key('LANGUAGE'):
del env['LANGUAGE']
if env.has_key('LC_ALL'):
del env['LC_ALL']


不会写python的同学可以直接来这里下载process.py。

BUG 2 :

使用rbt post,在要求输入密码的时候会挂掉,也是不支持windows的一个大BUG,之前我是定位到getpassword那里把密码硬写了进去,比较粗暴。这里可以手动在.reviewboardrc里面配置好:

REVIEWBOARD_URL = "http://192.168.0.1/reviewboard/"
REPOSITORY = "Lab"
USERNAME = "name"
PASSWORD = "password"

BUG 3: 

中文windows操作系统的同志们注意了,一定要避免所有可能出现中文的地方,比如“时间”

解决办法就是去控制面板-区域和语言,把格式改成“英语(美国)"。

不是BUG的问题

rbt不能搞以中文命名的文件,如“中文.txt”,这会导致后面的转码失败。擦嘞,到处都是坑。

下面进入配置指南的整体


1. 首先使用bitnami-reviewboard-2.0.11-0-windows-installer先把reviewboard装上,期间各种配置都比较简单。牢记管理员的密码。

2. 接下来是将reviewboard与svn关联起来,其实不难,但是对第一次使用reviewboard的同学来说会很痛苦,这里奉上我的配置截图:



Repository type:版本管理工具的类型,这里用Subversion。

Path:是你的svn中repository的路径。注意这里不能用https,rb不支持。

MirrorPath:我是配的我要用的工程的路径。

都配好之后,在新建review里面,选择你的工程,可以看到截至目前为止的所有checkin:



-------------------------------------------------------分割线~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

到这里svn和rb的关联就配好了。


但是这样肯定不够啊。因为如果想达到commit代码之前进行review的话,需要手动创建diff文件,然后再rb里面上传,忒麻烦。

3. rbtools华丽登场了。

rbtools已经给了牛逼的windows安装文件。下载一键安装,配上环境变量C:\Program Files\RBTools\bin

另外还需要一个辅助工具diffutil,下载一键安装,配上环境变量C:\Program Files\GnuWin32\bin

记得fix一下上面说到的bug。

4. 如果一切顺利的话,到这里就都OK了。

试一把:

 1. 将上面的.reviewboardrc文件放到你的svn工程目录下。
 2. cmd到工程目录下,执行rbt setup-repo可以看到配置信息。
 3. 随便改个文件,执行rbt post提交修改到rb。
 4. 使用你的用户名登录rb,在review requset里面可以看到你刚刚提交的review request。
 5. 完成


记住一点,如果rbt执行命名失败,可以加-d进入调试模式,跟一下错误来源。
正是有志者事竟成,搞定Python,Reviewboard终好使
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: