Gerrit 服务器部署

来源:互联网 发布:上海地铁软件 编辑:程序博客网 时间:2024/06/06 05:16
安装网站
环境:Unix系统,我用的是 Ubuntu 12.04

先从网上将安装包下载下来(gerrit.war,名字中可能包含其版本号),按照包内 Document/install.html 说明,推荐为其创建一个专门的用户,然后在该账户内搭建 Gerrit 网站:
  sudo adduser gerrit2
  sudo su gerrit2
  java -jar gerrit.war init -d /path/to/your/gerrit_application_directory
安装过程中可能需要去下载一个 jar 包,保持网络通畅就行。其间也会提示各种属性设置,比较重要的我有印象的是:
  • 数据库,偷懒,当然就用他自带的 H2 数据库。不怕麻烦的话,也可以自己整个 Mysql 服务。
  • 用户登录方式:默认是用 OpenID,我也偷懒了,就用它了。其他情况的话,需要另外研究一下。
  • Git 仓库存放的位置:这个位置是相对于你的 Gerrit 安装目录的,选默认就可以了。
当然,其他也有一些设置,不过都不是我关心的参数了,一路回车然后就是等待,成功。

Gerrit 网站是自带服务器(Jetty)的,还是比较方便的,免去了自己配置服务器的烦恼。需要注意的是,安装好以后它会默认启动服务器,关机再开机后需要重新启动的,相关命令:
  review_site/bin/gerrit.sh start
  review_site/bin/gerrit.sh stop
  review_site/bin/gerrit.sh restart
当然,你也可以考虑设置为每次开机自动启动:
  sudo ln -snf `pwd`/review_site/bin/gerrit.sh /etc/init.d/gerrit
  sudo ln -snf /etc/init.d/gerrit /etc/rc3.d/S90gerrit

总的来说,安装还是比较简单的,仔细看说明基本上没什么问题。Gerrit 有很多东西是可配置的,有兴趣的可以看 gerrit.war 包内 Document 文件夹内的一堆 config 打头的文件。
*如果希望用另外的网站服务器来 Host Gerrit,使用支持 J2EE servlet 的服务器就可以,比如 Tomcat 等等 (详见 Document/install-j2ee.html 说明)。

Root 账号
第一个创建/登入的账号将会被赋予 root 权限,我用的是 OpenId,用我的 gmail 账户登录就获得了 root 权限。如果是采用其他的方式,如何来处理账号的问题还有待研究。

需要注意的是,设置 Username 的时候:为了配合 repo 的使用,Username 必须和你用来提交代码的邮箱的前半段一致,比如你以后使用 yourname@exmaple.com 来提交代码,那你就一定要用 yourname 来做 username。而且这个只能在第一次登入的时候设置,gerrit 网页中并没有提供一个地方来修改这个 username,估计只有直接去数据库改,所以第一次设对 username 非常重要,填错了会比较麻烦。(我觉得这是个比较坑的设置,既然有这个限制,那么为什么不直接把email的前半段作为 username 就好了?还要自己设置。)

创建 Project
Root 账号可以创建项目,Projects -> Create New Project。在创建项目的时候还可以指明项目的各种细节条件,目前我只是测试用,所以并没有详细的研究其中的条件,在实际项目中还是值得研究一下的。

创建一个空项目是一个很简单的事情,但是,Gerrit 在网页中并没有提供删除项目的地方,可能是为了防止误删,不过真不方便,只能在服务器上手动一步一步清掉一个 project 的数据(文件,数据库中的数据等等)。还好有个 delete-project 的插件,装好后就可以通过命令行来一次删除一个项目,但目前这个插件只有源码,需要自己来编……总之就是各种麻烦,不过,毕竟不是常做的事情,麻烦点还算能接受。

Documentation
查文档在任何时候都是一个重要的解决问题的途径,Gerrit 网站提供了在线文档点进去就可以看哦~

小结
其他还有些东西,暂时也不涉及到也就没有去深入研究了。但在真正的实践中都是很重要的东西,比如用户权限的管理,change 的管理等等,这些问题仔细研究都是有相当丰富的内容。总体来看,Gerrit 的搭建还是比较容易的,但是要实际投入使用的话,还是要花些时间来处理很多细节的问题,但毫无疑问都是值得的。
原创粉丝点击