git学习--gerrit服务器搭建总结

来源:互联网 发布:智百威软件怎么用 编辑:程序博客网 时间:2024/05/01 16:32
gerrit知识理解:

    gerrit代码审核服务器:  作为git代码管理服务器,gerrit为git代码的提交引入了强制审核机制(除非特别的授权设置),所以也可以称gerrit服务器为代码审核服务器,其提供团队开发时的严格的代码审核入库机制,便于版本管理和版本安全。

    git:  版本控制的工具,gerrit是对git提交代码的一个可视化代码审核机制。

    gitweb: Gitweb提供了git版本库的图形化web浏览功能,能看代码库,提交日志等

搭建环境:

    服务器操作系统:ubuntu14.04

    gerrit所用包:gerrit-2.10.war ,此版本必须要用jdk7以上,本人用了jdk7.

搭建gerrit服务器步骤列表:

1.  ubuntu服务器安装git

2. ubuntu服务器安装jdk7

3. 安装gerrit服务器

4. 启动gerrit服务

5. 访问gerrit服务器

6.  gerrit账户设置

7.  gitweb安装

8. 权限FAQ


具体搭建步骤:

1.  ubuntu服务器安装git

sudo apt-get install git-core
2.  ubuntu服务器安装jdk7

    1> 从官网下载对应平台的JDK:

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

     2> 安装jdk:sudo  tar  zxvf jdk-7u79-linux-x64.tar.gz   /home/ubuntu/Software

     3> 配置jdk环境变量:

    打开/etc/profile, 在其中加入如下环境变量

     export JAVA_HOME=/home/ubuntu/Software/jdk1.7.0_79     export JRE_HOME=$JAVA_HOME/jre     export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH     export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$JAVA_HOME:$PATH

     4>  在shell下执行java -version,当打印出如下信息时表示jdk安装成功:

     java version "1.7.0_79"     Java(TM) SE Runtime Environment (build 1.7.0_79-b15)     Java HotSpot(TM) 64-Bit Server VM (build 24.79-b02, mixed mode)

3. 安装gerrit服务器

    1> 从官网下载gerrit包gerrit-2.10.war:http://code.google.com/p/gerrit/ 

    2> 建立存放代码的目录: $:mkdir /home/GerritResource,存放上传到gerrit的代码,在配置文件中设置

    3> 安装gerrit:

    在根目录创建一个gerrit服务安装目录,并把gerrit-2.10.war包放此目录。加入这里目录为:gerrit_server

$:cd /$:sudo mkdir gerrit_server   #建立好此目录之后,把gerrit-2.10.war放此目录$:java -jar gerrit-2.10.war init -d review_site安装gerrit。
【注意:安装配置时,标红部分需要设置,其余一路回车保持默认】

[gerrit]basePath = /home/GerritResource       #第2点创建的空目录canonicalWebUrl = http://172.26.13.71:8080/   #服务器地址,后续在浏览器中通过此地址访问gerrit服务器[database]type = h2                #h2为gerrit默认的一个数据库database = db/ReviewDB[index]type = LUCENE[auth]type = OPENID           #OPENID可以采用google及yahoo邮箱登录,所有需要注册一个账号来初始化登陆[sendemail]smtpServer = localhost[container]user = gerritjavaHome = /home/ubuntu/Software/jdk1.7.0_79/jre       #jdk中的jre路径[sshd]listenAddress = *:29418         #ssh服务端口,保持默认[httpd]listenUrl = proxy-http://*:8080/       #默认应该时8081,此处我设置为8080[cache]directory = cache[gitweb]cgi = /usr/lib/cgi-bin/gitweb.cgi   #gitweb为可视化代码库的一个组件,此处安装gitweb时自动产生,暂时不管。

4. 启动gerrit服务

    安装完成之后,需要手动启动gerrit服务,在shell下执行如下命令启动:

    $:cd /gerrit_server/review_sites/bin   #进入到gerrit安装目录下的bin目录。    $: . /gerrit.sh  start     #启动gerrit服务,停止为. /gerrit.sh  stop

5. 访问gerrit服务器

在客户端(另外一个pc机上)的浏览器中输入服务器网址进入访问:http://172.26.13.71:8080,如图:


看到上图界面说明服务器链接上去了,此时点击上图右上角的sign in然后看到如下截图,


此时注册一个Yahoo ID进行登陆,由于本人之前注册过yahoo id,所有点击“Sign in with a Yahoo ID”进行登陆的时候没有出现输入用户名等界面,直接跳转到如下图时说明成功登陆了服务器:


6.  gerrit账户设置

    第一个登陆的用户直接是administrator,系统自动创建ID为1000000的账号,点击上图右上角1000000账号的三角号下拉菜单有一个setting选项卡,点击开始账户设置,当设置玩账户只会,1000000会自动变成设置的用户名。

setting选项卡:

   profile-->Username设置为yanxiangyfg

   profile-->Fullname设置为yanxiangyfg

   Contact Information -->Full Name 设置为yanxiangyfg

   SSH Public Keys--->Add key中加入客户端的ssh公钥(shell中输入ssh-keygen,拷贝产生的~/.ssh/id_rsa.pub文件到此处,设置完成之后,在客户端就的git就可以用ssh协议来往gerrit服务器上传和下载代码了。


7.  gitweb安装

    1> 直接通过命令在服务器中安装:$: sudo apt-get install gitweb

    2> 通过git config配置一下:

       git config --file /gerrit_server/review_sites/etc/gerrit.config gitweb.cgi $gitweb_path/gitweb.cgi        git config --file /gerrit_server/review_sites/etc/gerrit.config --unset gitweb.url
【注::此处的“/gerrit_server/review_sites”为gerrit服务器安装目录,$gitweb_path变量为gitweb安装目录,可以用“find /  - name gitweb.cgi”命令找到路径】

    3> 重启gerrit服务,使得gitweb生效: 

     /gerrit_server/review_sites/bin/gerrit.sh stop   #停止gerrit服务    /gerrit_server/review_sites/bin/gerrit.sh start   #启动gerrit服务
重启gerrit服务后gitweb生效,如下图,增加了一栏gitweb栏。


 

8. 权限FAQ

    1> 在gerrit集成gitweb之后,发现只有我的root用户(gerrit里注册的第一个用户)才能够点gitweb链接正常打开gitweb页面。其他的普通用户点gitweb链接显示404错误

     解决:为项目的用户组增加了refs/meta/config的read,即在read标签中加入注册的用户组即可


1 0
原创粉丝点击