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. IOS低版本遇到了坑不知道你遇到了没

    拿着项目给客户测试,客户那边三个人俩人水果手机是ios8以下版本,结果导致```(恭喜,坑出现!)总不能说老总!"您把版本升级到ios9 吧!

  2. 第三节 Hello world --python初体验

    祭旗--hello world 据说简单优雅.功能强大是python的魅力所在,这里看到简单了,优雅是什么样的,接下来的学习中慢慢体会吧! print ("Hello world" ...

  3. Git学习(三)——暂存区、远程仓库、增删改管理

    一.工作区和暂存区 工作区(Working Directory) 就是在你的电脑里能看到的目录 版本库(Repository) 工作区中的一个隐藏目录.git,这个不算工作区,而是Git版本库.Git ...

  4. AJAX请求 $.post方法的使用

    使用jQuery的$.post方法可以以POST形式向服务器发起AJAX请求.$.post方法是jQuery的实用工具方法. $.post方法语法 $.post(url,parameters,call ...

  5. IE10一下的img标签问题

    之前写过的一段简单的demo,后来在IE10以下使用的时候发现无法使用,先上一段代码 HTML: <div class="all" id="box"> ...

  6. protobuf初体验

    概念介绍 Protocol buffers 是google公司的与语言无关.与平台无关的.可扩张的为序列化话结构数据,就像xml一样,办事更加的小巧.快速.简单.Protocol buffers 目前 ...

  7. iOS.Performance-trick-presentViewController-is-so-slow-in-didSelectRowAtIndexPath

    presentViewController is so slow in "tableView:didSelectRowAtIndexPath:" Use Case: 在UITabl ...

  8. Faster-RCNN 解析

    http://blog.csdn.net/xzzppp/article/details/52317863 包含faster-rcnn源码和对应的训练测试相关的知识点解析

  9. ReferenceQueue<T>随笔

    参考资料: ReferenceQueue食用手册 java引用食用手册 ReferenceQueue源代码里面很好的展示了java队列的实现思路, 以及多线程观察者的实现思路 多线程观察者实现思路: ...

  10. MFC字符串转化成16进制

    //CString m_str = _T("11"); //USES_CONVERSION; //char *m_cc = T2A(m_str); //BYTE m_bb; //s ...