Gerrit代码审核服务器搭建全过程

转载请标明出处:http://blog.csdn.net/ganshuyu/article/details/8978614

环境:Ubuntu12.xx

1、建立专有帐户

sudo adduser gerrit

sudo passwd gerrit

su gerrit

2、配置Java环境

  从官网下载对应平台的JDK并安装:

   http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html

  安装:

sudo tar zxvf ./jdk-7u45-Linux-i586.tar.gz -C /opt

完成后,配置相关环境变量

  $: vim ~/.bashrc

   添加如下环境变量:

  1. JAVA_HOME=/opt/jdk1.6.0_38  -->安装路径
  2. export JRE_HOME=$JAVA_HOME/jre
  3. export CLASSPATH=$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH
  4. export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH

3、从官网下载gerrit

http://code.google.com/p/gerrit/

4、安装gerrit

java -jar gerrit-full-2.5.2.war init -d review_site

  一路按回车,先以默认方式安装,之后再手动修改配置文件。

5、建立存放代码的目录

$:mkdir /home/gerrit/GerritResource

6、配置gerrit

$: vim review_site/etc/gerrit.config

  1. [gerrit]
  2. basePath = /home/gerrit/GerritResource    -->第5点创建的空目录
  3. canonicalWebUrl = http://10.10.90.160:8081/
  4. [database]
  5. type = H2                                 -->使用默认的H2数据库
  6. database = db/ReviewDB
  7. [auth]
  8. type = HTTP
  9. [sendemail]
  10. enable = true
  11. smtpServer = smtp.163.com
  12. smtpUser = <a target="_blank" href="mailto:abc@163.com">abc@163.com</a>      -->gerrit服务器用于发送邮件的邮箱
  13. smtpPass = email-passwd      -->邮箱密码
  14. from = <a target="_blank" href="mailto:abc@163.com">abc@163.com</a>           -->邮件中显示的发件人
  15. [container]
  16. user = gerrit
  17. javaHome = /opt/jdk1.6.0_38/jre
  18. [sshd]
  19. listenAddress = *:29418
  20. [httpd]
  21. listenUrl = proxy-http://10.10.90.160:8081/
  22. [cache]
  23. directory = cache

7、安装apache2服务器

  sudo apt-get install --reinstall apache2  apache2.2-common

8、配置apache2服务器

8.1、开启代理功能、复写功能(以下模块链接到mods-available)
          cd /etc/apache2/mods-enabled
          ln -s ../mods-available/proxy.load
          ln -s ../mods-available/proxy.conf
          ln -s ../mods-available/proxy_http.load
          ln -s ../mods-available/proxy_balancer.conf
          ln -s ../mods-available/proxy_balancer.load
          ln -s ../mods-available/rewrite.load
          ln -s ../mods-available/ssl.conf
          ln -s ../mods-available/ssl.load

8.2、配置apache2的监听端口

$: vi /etc/apache2/ports.conf

         ……
     NameVirtualHost *:80
     NameVirtualHost *:8080   -->仿照80端口,加上对8080端口的监听。
     Listen 80
     Listen 8080
         ……

8.3、配置反向代理

$: sudo vi /etc/apache2/httpd.conf

  1. ServerName ganshuyu.pbi.com
  2. <VirtualHost *:8080>        -->客户端访问:http:10.10.90.160:8081 会转到gerrit服务器的地址:http://10.10.90.160:8080 上
  3. ProxyRequests Off
  4. ProxyVia Off
  5. ProxyPreserveHost On
  6. AllowEncodedSlashes On
  7. RewriteEngine On
  8. RewriteRule ^/(.*) http://10.10.90.160:8081/$1 [NE,P]
  9. <Proxy *>
  10. Order deny,allow
  11. Allow from all
  12. </Proxy>
  13. <Location /login/>
  14. AuthType Basic
  15. AuthName "Gerrit Code Review"
  16. Require valid-user
  17. AuthBasicProvider file
  18. AuthUserFile /home/gerrit/review_site/etc/passwd
  19. </Location>
  20. ProxyPass / http://10.10.90.160:8081/
  21. </VirtualHost>

8.4、主配置文件中加入httpd.conf,使其生效

$: sudo vi /etc/apache2/apache2.conf

查看是否已包含:httpd.conf,如果没有,则加上如下这句话:

Include httpd.conf

9、设置第一个gerrit用户的帐号和密码
      $: touch ./review_site/etc/passwd
      $: htpasswd -b ./review_site/etc/passwd gerritUser1 123456789

(后续再添加gerrit用户可使用: $: htpasswd -b ./review_site/etc/passwd UserName PassWord )

10、开启gerrit服务器
      $: ./review_site/bin/gerrit.sh start

如果提示发生如下错误:
         ** ERROR: GERRIT_SITE not set
        则可按如下方法修改:
             $: vim gerrit.sh
                     在GERRIT_SITE变量被赋值之后加入下面这行,改变该变量的值。
                                  GERRIT_SITE=/home/gerrit/review_site

11、重启apache2服务器

$: sudo /etc/init.d/apache2 restart

12、访问: http://10.10.90.160:8080/  ,用gerritUser1用户登录:

至此,一个gerrit代码评审服务器已经搭建完成。接下来就需要完成往服务器里填充所需要管理的代码、制定代码入库流程、组员权限的分配等等更为精细的工作了。

Gerrit代码审核服务器搭建全过程的更多相关文章

  1. ubuntu搭建Gerrit代码审核服务器

    谷歌的 Android 开源项目在 Git 的使用上有两个重要的创新,一个是为多版本库协同而引入的 repo,另外一个重要的创新就是 Gerrit —— 代码审核服务器.Gerrit 为 git 引入 ...

  2. gerrit代码审核工具之“error unpack failed error Missing unknown”错误解决思路

    使用gerrit代码审核工具时遇到error: unpack failed: error Missing unknown d6d7c89bd1d77f44c5c8e99437aaffbfc0684e7 ...

  3. 软件测试-Svn服务器搭建全过程-基于Centos6.7-64bit

    本文详细介绍了在CentOs6.7-64bit服务器上搭建SVN版本控制服务 工具准备 CentOs6.7-64bit操作系统:关闭linux防火墙:设置定固IP--DHCP(动态):安装系统过程中开 ...

  4. Git服务器搭建全过程分步详解【转】

    转自:http://developer.51cto.com/art/201507/483448.htm GitHub是一个免费托管开源代码的Git服务器,如果我们不想公开项目的源代码,又不想付费使用, ...

  5. Git服务器搭建全过程

    GitHub是一个免费托管开源代码的Git服务器,如果我们不想公开项目的源代码,又不想付费使用,那么我们可以自己搭建一台Git服务器. 下面我们就看看,如何在Ubuntu上搭建Git服务器.我们使用V ...

  6. Git服务器搭建全过程分步详解

    GitHub是一个免费托管开源代码的Git服务器,如果我们不想公开项目的源代码,又不想付费使用,那么我们可以自己搭建一台Git服务器. 下面我们就看看,如何在Ubuntu上搭建Git服务器.我们使用V ...

  7. gerrit代码简单备份方案分享

    由于前期部署了gerrit代码审核系统,开发调整后的线上代码都放到gerrit上,这就要求我们要保证代码的安全.所以,对gerrit代码的备份至关重要! 备份的策略是:1)先首次将gerrit项目代码 ...

  8. ubuntu搭建gerrit+gitweb代码审核系统

    一.Gerrit的简介 Gerrit是Google开源的一套基于web的代码review工具,它是基于git的版本管理系统.Google开源Gerrit旨在提供一个轻量级框架,用于在代码入库之前对每个 ...

  9. 实战搭建SVN代码版本服务器

    前言:公司要求搭建一台SVN代码版本管理服务器,用于管理所有代码资产: 项目架构图 1.环境安装 [root@host_centos ~]#yum –y install subversion mod_ ...

随机推荐

  1. 修改MySQL事件

    MySQL允许您更改现有事件的各种属性. 要更改现有事件,请使用ALTER EVENT语句,如下所示: ALTER EVENT event_name ON SCHEDULE schedule ON C ...

  2. Scrapy 笔记(三)

    摘抄自Python 一.随机user-agent 的设置 关于配置和代码 这里我找了一个之前写好的爬虫,然后实现随机更换User-Agent,在settings配置文件如下: DOWNLOADER_M ...

  3. elementUI 学习入门之 layout 布局

    layout 布局 通过基础的 24 分栏,可进行快速布局 基础布局 使用单一分栏创建基础的栅格布局, 通过 span 属性指定每栏的大小 <el-col :span="8" ...

  4. Java Web开发——HTML CSS JavaScript 杂记

    HTML是一种在互联网上常见的网页制作标注性语言,并不能算作一种程序设计语言.因为它相对程序设计语言来说缺少了其应所有的特征.对于网站设计人员来说,只使用HTML是不够的,需要在页面中引入CSS样式. ...

  5. AppDomain.CurrentDomain.BaseDirectory是什么

    AppDomain.CurrentDomain.BaseDirectory 是获取基目录,它由程序集冲突解决程序用来探测程序集.由显示的路径可以看出,它代表的是程序集所在的目录,它具有读取和写入的属性 ...

  6. 初识Linux 基础操作(2)

    1.Linux启动流程    1).linux启动过程        ①.进入grub界面选择相应的启动内核        ②.读取kernel内核文件-/boot/vmlinuz-*         ...

  7. WebLogic Server

    前几天,看了几集J2ee , 给我的感觉就是,看不懂!! 一点也不懂! 那怎么办呢? 听老师的,不管懂不懂,先看看再说.接下来,就开始了J2ee "艰苦"的历程.在J2ee中,经常 ...

  8. 51nod1981 如何愉快地与STL玩耍

    先摆官方题解吧......... ....................有什么好讲的呢....... 注意一些地方常数优化一下.......然后......$bitset$怎么暴力怎么来吧..... ...

  9. Apache URLRewrite 原理及配置实现

    看一下网站上的一些 URL.您是否发现一些类似于 http://yoursite.com/info/dispEmployeeInfo. ... 99&type=summary的 URL?或者, ...

  10. hdu 3001 三进制状压

    题意:tsp问题,但是每个点可以最多走两次 链接:点我 转移方程见代码 #include<iostream> #include<cstdio> #include<cstr ...