Reviewboard是一个开源个人可以免费使用的代码评审框架,貌似现在有越来越多的公司也开始使用reviewboard作为公司的代码评审工具。

  今天早上试了一下,搭建过程非常方便简单,按照网页提示即可完成,比较人性化。公司里使用的话,支持LDAP,直接导入账户,方便。

  安装指导如下页面:

  https://www.reviewboard.org/docs/manual/2.5/admin/installation/linux/

  1.前期需要安装, 数据库以及web服务器,我选的是mysql+Apache,百度一下怎么安装即可。

  mysql:sudo apt-get install mysql-server

  Apache: sudo apt-get install apache2

  2.sudo -i 进入root账户,免去每次加sudo,按照网页提示安装如下工具:

  apt-get install python-setuptools

  apt-get install python-dev

  apt-get install memcached

  easy_install python-memcached

  apt-get install patch

  easy_install ReviewBoard

  apt-get install python-mysqldb

  

  3.安装代码控制组件,可以按照自己的实际情况选装,我是全部都装了省事:

  apt-get install cvs

  apt-get install git-core

  easy_install mercurial

  easy_install P4PythonInstaller

  easy_install subvertpy

  apt-get install subversion python-svn

  4.以上的工具安装完之后配置一下mysql以及创建一下数据库和账户:

  编码模式:

[client]
default-character-set=utf8 [mysqld]
character-set-server=utf8

  

  创建账户(注意下面的myuser和mypassword替换成你自己的实际用户名和密码):

$ mysql -u root -p
mysql> CREATE DATABASE reviewboard CHARACTER SET utf8;
mysql> CREATE USER 'myuser'@'localhost' IDENTIFIED BY 'mypassword';
mysql> GRANT ALL PRIVILEGES ON reviewboard.* to 'myuser'@'localhost';

  5.开始安装:

  rb-site install /var/www/reviews.example.com

  这中间要做填一些选项,根据你之前的选择来填,比较简单的,注意看一下填就好(domainName自己测试直接填本机ip)。

  完了还要按照提示配置一下(实际要chown的比下面的还要多两个,看最后完成的提示把另外两个加上去):

$ chown -R www-data /var/www/reviews.example.com/htdocs/media/uploaded
$ chown -R www-data /var/www/reviews.example.com/data

  6.然后开始配置Apache:

$ cd /etc/apache2/sites-available
$ cp /var/www/reviews.example.com/conf/apache-wsgi.conf reviews.example.com.conf
$ cd ../sites-enabled
$ ln -s ../sites-available/reviews.example.com.conf .

  然后打开浏览器,输入之前domainName的ip,应该就可以打开reviewboard的网页了,用你在步骤5里面输入的管理员账户密码来登录。

  在配置里面把你的代码仓库加进去(加完会提示你去代码仓库下面加一个.reviewboardrc文件,文件的内容也在setup里面有的),创建代码评审组,添加新用户,添加代码评审邮件通知。

 

  7.这个时候应该还没有rbt这个工具,仍然到reviewboard网站上去下载,应该有提供代码仓库可以直接下载的:

  git clone git://github.com/reviewboard/rbtools.git

  安装方法下载的代码里面有,看INSTALL说明。

  

  8.最后试着去修改一下代码,rbt post一下,看看能不能发布代码评审到网页上,并且邮箱提示所有小组内的同事。

  非常简单的几步就完成了,如果中间有遇到什么问题,胆大心细看提示。

  

  因为只是个人试用,如果公司使用的话,建议接入LDAP,然后搞一个局域网内正常的DomainName,就完美了,公司应该会有自己专门的邮箱的。

  问题解决:

  晚上找了个室友测试了一下这个环境,结果遇到一个问题,我这里提交好好的,他提交就一直返回HTTP 400,API 224的错误,查了错误索引,是diff文件解析不对。

  各种排查,结果最后发现室友把自己的代码仓库的svn密码输错了,所以reviewboard根本没有连上他的代码仓库,diff文件生成之后也就无从解析生产review了。

  

  

ubuntu上搭建review board代码评审站点的更多相关文章

  1. Ubuntu上搭建Hadoop环境(单机模式+伪分布模式)

    首先要了解一下Hadoop的运行模式: 单机模式(standalone)        单机模式是Hadoop的默认模式.当首次解压Hadoop的源码包时,Hadoop无法了解硬件安装环境,便保守地选 ...

  2. Ubuntu上搭建Hadoop环境(单机模式+伪分布模式) (转载)

    Hadoop在处理海量数据分析方面具有独天优势.今天花了在自己的Linux上搭建了伪分布模式,期间经历很多曲折,现在将经验总结如下. 首先,了解Hadoop的三种安装模式: 1. 单机模式. 单机模式 ...

  3. Ubuntu上搭建Hadoop环境(单机模式+伪分布模式)【转】

    [转自:]http://blog.csdn.net/hitwengqi/article/details/8008203 最近一直在自学Hadoop,今天花点时间搭建一个开发环境,并整理成文. 首先要了 ...

  4. Ubuntu上搭建Watir-Webdriver与Cucumber环境

    本文主要演示如何在Ubuntu上搭建Watir-Webdriver与Cucumber环境,用于自动化测试. 1. Ubuntu环境 A. 安装 因为我的工作机是Windows,所以采用虚拟机的方式使用 ...

  5. Ubuntu上搭建Git服务器

    下面我们就看看,如何在Ubuntu上搭建Git服务器.我们使用VMware虚拟机安装两台Ubantu系统,分别命名为gitServer和gitClient_01. 1.安装OpenSSH并配置SSH无 ...

  6. 在ubuntu上搭建交叉编译环境---arm-none-eabi-gcc

    最近要开始搞新项目,基于arm的高通方案的项目. 那么,如何在ubuntu上搭建这个编译环境呢? 1.找到相关的安装包:http://download.csdn.net/download/storea ...

  7. 在Ubuntu上搭建kindle gtk开发环境

    某个角度上说,kindle很类似android,同样的Linux内核,同样的Java用户层.不过kindle更注重简单.节能.稳定.Amazon一向认为,功能过多会分散人们阅读时候的注意力. Kind ...

  8. Ubuntu上搭建GPU服务器

    1.安装显卡驱动 2.安装CUDA 3.安装cuDNN 下载: 根据显卡类型以及操作系统,选定CUDA版本和语言设置,下载对应的显卡驱动. 驱动下载地址 安装 $ sudo ./NVIDIA-Linu ...

  9. 在ubuntu上搭建reviewboard

    review board 2.0.5 ubuntu ubuntu-12.04.1-desktop-amd64 基本上基于这个教程:http://alephnullplex.appspot.com/bl ...

随机推荐

  1. 使用miniui框架制作树形节点

    <div id="leftTree" class="mini-outlooktree" url="<%=basePath%>mana ...

  2. iOS10 的适配问题,你遇到了吗?导航栏标题和返回按钮神奇的消失了

    苹果系统升级后好多应用都发了新版本来适配,今天就来分享一下我的适配历程. 首先是出现的问题: 1.push一个控制器,返回按钮和标题神奇的消失了,打开三维视图(比较坑的是有的版本老到打不开三维视图 ) ...

  3. 安装好grunt,cmd 提示"grunt不是内部或外部命令" 怎么办?

    Grunt和所有grunt插件都是基于nodejs来运行的,因此,必须安装node.js. (一) 去官网http://nodejs.org/ 下载安装包 node-v6.9.2.msi,直接点击安装 ...

  4. webpack配置sass模块的加载

    webpack管理的项目,我们希望用sass定义样式,为了正常编译,需要做如下配置.这里不讲webpack的入门,入门的文章,我推荐这篇<webpack入门>. 为了使用sass,我们需要 ...

  5. Python3利用BeautifulSoup4抓取站点小说全文的代码

    再写一个用BeautifulSoup抓站的工具,体会BeautifulSoup的强大. 根据小说索引页获取小说全部章节内容并在本地整合为小说全文.不过不是智能的,不同的站点对代码需要做相应的修改. # ...

  6. instruments usage error specified target process is invalid

    遇到这个问题的很多,但都没说具体的解决办法. 如果你的包名 路径之类的都正确,还是报这个错误的话,请重启手机.

  7. WCF use ProtoBuf

    ProtoBuf, 比起xml和json, 传输的数据里面没有自描述标签, 而且是基于二进制的, 所以有着超高的传输效率, 据牛人张善友的描述, 可以替代WCF的自带的编码方案, 效率有极大的提升. ...

  8. java javacv调用摄像头并拍照

    调用摄像头并拍张照片,我一开始用的java的jmf媒体框架,但这个有很多的局限性不好使并且很有麻烦,兜了一圈发现javacv东西,研究之后这东西简单,方便:废话不多说了来重点. javacv官网:点击 ...

  9. 基于Xenomai和工控机的实时测控系统的研究

    http://www.docin.com/p-1006254643-f6.html

  10. Hibernate配置与事务管理

    数据库中 @num:代表一个变量 Set @num = 10; Select @num+@num from dual;  dual:临时表 得到结果 20 Hibernate:运用数据持久化,使用OR ...