Gerrit简易安装入门

简介

Gerrit 是一个基于 Web 的代码评审和项目管理的工具,面向基于 Git 版本控制系统的项目.

 

下文以gerrit-2.1.7-rc1在Ubuntu10.04上的安装为例:

创建Gerrit用户(可选)

$ sudo adduser gerrit2
$ sudo su gerrit2
$ cd ~gerrit2

安装Gerrit

下载gerrit-$version-rc1.war;

执行:

$ java -jar gerrit-$version-rc1.war init -d review_site 

命令行交互的安装过程如下:

Create '/home/gerrit2/review-site' [Y/n]?

*** Git Repositories
***

Location of Git repositories [git]:

*** SQL Database
***

Database server type [H2/?]:

*** User Authentication
***

Authentication method [OPENID/?]: http   
Get username from custom HTTP header [y/N]? :
SSO logout URL : 

*** Email Delivery
***

SMTP server hostname [localhost]: 
SMTP server port [(default)]:
SMTP encryption [NONE/?]:
SMTP username [gerrit2]: 
jushi@taobao.com's password :
confirm password :

*** Container Process
***

Run as [gerrit2]:
Java runtime [/usr/lib/jvm/java-6-sun-1.6.0.24/jre]:
Copy gerrit.war to /home/gerrit2/review-site/bin/gerrit.war [Y/n]?
Copying gerrit.war to /home/gerrit2/review-site/bin/gerrit.war

*** SSH Daemon
***

Listen on address [*]:
Listen on port [29418]:


Gerrit Code Review is not shipped with Bouncy Castle Crypto v144
  If available, Gerrit can take advantage of features
  in the library, but will also function without it.
Download and install it now [Y/n]? 
Downloading http://www.bouncycastle.org/download/bcprov-jdk16-144.jar ... OK
Checksum bcprov-jdk16-144.jar OK
Generating SSH host key ... rsa... dsa... done
*** HTTP Daemon
*** 

Behind reverse proxy           [y/N]? y
Proxy uses SSL (https://)      [y/N]? 
Subdirectory on proxy server   [/]: 
Listen on address              [*]: 
Listen on port                 [8081]: 

Initialized /home/gerrit2/review-site
Executing /home/gerrit2/review-site/bin/gerrit.sh start
Starting Gerrit Code Review: OK

上面大部分的回答是用回车默认的, 值得注意的地方有:

  1. 认证方式没有选择OpenId, 而是http, 因为这样会使得gerrit对外部系统有依赖, 目前gerrit支持google和yahoo提供的openid, 进试用均不稳定(也许是托GFW福);
  2. SMTP配置中,请选择合适的服务地址和帐号;
  3. 选择需要反向代理支持, 这和http认证有关;
  4. 配置完后, 安装脚本会自动启动gerrit.

配置Apache2反向代理

$ sudo apt-get install apache2

在/etc/apache2/httpd.conf中加入一下内容

<VirtualHost *>
  ServerName gerrit2.example.com
  ProxyRequests Off
  ProxyVia Off
  ProxyPreserveHost On

  <Proxy *>
        Order deny,allow
        Allow from all
  </Proxy>
 
  <Location /login/>
     AuthType Basic
     AuthName "Gerrit Code Review"
     AuthBasicProvider file
     AuthUserFile $gerrit.home/etc/passwords
     Require valid-user
  </Location>

  ProxyPass / http://$gerrit.host:8081/
</VirtualHost>

注意, ProxyPass中$gerrit.host最好用服务器对外的ip地址代替.

创建访问Gerrit的用户

由于是通过apache进行http basic认证, 故账户创建使用类似下面的命令即可:

$ htpassword $gerrit.home/etc/passwords $username

注册访问Gerrit的用户

使用上面创建的帐号, 登录http://$gerrit.host,浏览器会自动跳转至注册页面, 输入Full Name, 保存;

这里顺便可完成公钥的上传

ssh key

点击Continue, 完成注册.

创建项目

添加公钥后, 最好在$User.Home/.ssh中创建文件config, 里面输入以下内容:

Host $shortname
User $username
Port 29418
Hostname $gerrit.host
IdentityFile $path/to/private/key$

这个文件是可选的, 只是为了方便执行ssh命令. 

创建项目就通过下面的命令完成:

$ ssh $gerrit.host gerrit create-project -n $project.name

这个命令会在$gerrrit.home/git下初始一个bare库, 相应的在webUI中也可看到新建的项目了.

更多命令行, 请见这里.

其他

上述大部分内容参考了这篇blog,你也可以看看. 剩下的就靠官方文档和Google了, Good luck!



http://my.oschina.net/zhongl/blog/33017

### Android Gerrit离线安装方法 #### 准备工作 为了实现Android Gerrit的离线安装,首先需要准备必要的软件包和依赖项。这些准备工作可以在有网络连接的机器上完成,之后将所需文件复制到目标环境中。 - **Java环境**:确保拥有适用于Gerrit版本的JDK安装包[^2]。 - **Git工具**:下载并准备好适合操作系统的Git可执行程序以及相关库文件[^3]。 - **Gerrit WAR文件**:获取对应版本的`gerrit.war`文件用于初始化设置[^4]。 #### 创建本地仓库 建立一个包含所有必需组件(如上述提到的各项资源)的压缩包或共享目录,以便于后续在无网环境下部署时可以直接从中提取所需的安装材料。 #### 安装过程 一旦所有的前置条件都已满足,在断开互联网访问的目标计算机上按照如下方式继续: 1. 解压之前创建好的包含全部必要文件夹结构与内容的数据集; 2. 执行命令 `java -jar path/to/gerrit.war init -d review_site` 来启动向导式的初次设定流程;在此期间可能会被询问有关数据库类型的选择等问题,请依据实际情况作答; 3. 对应于特定需求调整产生的配置文档,特别是当涉及到自定义端口号或是其他服务集成方面的要求时; 4. 如果计划使用Nginx作为反向代理,则还需单独处理其相应的安置事宜。 通过以上步骤即可顺利完成一次完整的、不依赖外部联网状况下的Android Gerrit平台搭建作业。 ```bash # 示例:解压预构建的离线安装包至指定位置 tar zxvf offline_gerrit_package.tar.gz /opt/ # 进入刚刚展开出来的文件夹内运行初始化脚本 cd /opt/offline_gerrit/ java -jar gerrit-2.14.6.war init -d review_site ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值