本文简要描述了Review Board 、 Jupiter 、 JCR 、 Codestriker 、 Rietveld 几种开源代码评审工具的功能特点,并介绍了在 windows 下的安装步骤。 如您想使用 Web 方式进行代码评审,推荐安装 Review Board ,如您想在 Eclipse 中进行代码评审请安装 Jupiter 。
一、Review Board
Review Board 是基于Web 的Code Review 工具。适用于不同规模的项目,支持 pre-commit 和 post-commit 两种 Review 方式,可查看对比代码的多次评审、修改情况, 并提供了多种工具,是当前最活跃的Code Review 项目。
官方主页: http://www.reviewboard.org/
当前版本:1.6.4.1(2012-02-28)
RBTools 当前版本:0.4.1(2012-02-29)
支持的SCM :Bazaar 、CVS 、ClearCase 、Git 、Mercurial 、Perforce 、Plastic SCM 、Subversion
支持的数据库:MySQL v5.0.31 或更新、PostgreSQL 、sqlite v3
支持的Web Server :Apache + mod_wsgi 或 mod_python 或 fastcgi ,lighttpd + fastcgi
依赖软件:
Python 2.7 http://python.org/
Python Setuptools http://pypi.python.org/pypi/setuptools
GNU patch http://sourceforge.net/projects/gnuwin32/files/patch/
Memcached for Windows http://code.jellycan.com/memcached/
(Memcached 官方主页 http://memcached.org/ )
Python Imaging Library http://www.pythonware.com/products/pil/
PyCrypto http://files.cnblogs.com/brucenan/pycrypto-2.2.win32-py2.7.rar
Windows 下安装步骤
1. 安装Python 、Setuptools
安装完毕后,增加C:\Python27 ;C:\Python27\Scripts 到Path 环境变量
2. 安装GNU patch
安装完毕后,增加patch.exe 所在路径到 Path 环境变量
3. 安装Memcached
Memcached 是一个高性能的缓存服务器。可选项,为提高服务器响应速度推荐安装。
1)下载Memcached for Windows( http://code.jellycan.com/memcached/ )
2)解压Memcached 到一个路径(如C:\memcached )
3)从命令行安装memcached 服务
memcached.exe -d install
4)启动memcached 服务
可从windows 服务管理器启动,也可运行如下命令启动服务:
memcached.exe -d start
( 注:可通过memcached.exe -h 查看其它命令参数)
5)安装python-memcached
easy_install python-memcached
4. 安装Python Imaging Library
5. 安装PyCrypto
PyCrypto 提供 SSH repository 支持。
官网提供的PyCrypto 下载地址为: http://www.voidspace.org.uk/python/modules.shtml#pycrypto ,安装后启动Apache 出错,输出如下日志:
File "D:\\Python27\\lib\\site-packages\\django-1.3.1-py2.7.egg\\django\\core\\handlers\\wsgi.py", line 250, in __call__
self.load_middleware()
File "D:\\Python27\\lib\\site-packages\\django-1.3.1-py2.7.egg\\django\\core\\handlers\\base.py", line 47, in load_middleware
raise exceptions.ImproperlyConfigured('Error importing middleware %s: "%s"' % (mw_module, e))
ImproperlyConfigured: Error importing middleware reviewboard.admin.middleware: "DLL load failed: \xd5\xd2\xb2\xbb\xb5\xbd\xd6\xb8\xb6\xa8\xb5\xc4\xc4\xa3\xbf\xe9\xa1\xa3"
mod_wsgi (pid=4524): Exception oc