Gerrit的安装和使用说明
Gerrit安装和使用说明
搞了几天,资料也查了不少,终于磨出来了。有什么不对的地方,大家及时提出来。。。,开始吧
|
系统 |
Centos6.5 x64 |
|
内存 |
2G |
|
硬盘 |
20G |
|
数据库 |
Mysql5.1 |
|
服务器 |
Apache2.2 |
准备
#yum update #yum install git #yum install java-1.7.0-openjdk.x86_64 #yum install mysql-server #service mysqld start
配置mysql
#mysql –u root -> CREATE USER 'gerrit'@'localhost' IDENTIFIED BY ''; -> CREATE DATABASE reviewdb; -> ALTER DATABASE reviewdb charset=latin1; -> GRANT ALL ON reviewdb.* TO 'gerrit'@'localhost'; -> FLUSH PRIVILEGES;
安装gerrit
安装文件见【附件】
1)一直选择默认enter(只有在选择数据库时选择mysql,在选择验证方式时选http)
#java -jar gerrit-full-2.5.war init -d /var/gerrit-site
2)Gerrit配置文件如下:(默认路径:/var/gerrit-site/etc/gerrit.conf)
[gerrit]
basePath = git
canonicalWebUrl = http://192.168.1.78:8081/
[database]
type = MYSQL
hostname = localhost
database = reviewdb
username = gerrit
[auth]
type = HTTP
[sendemail]
smtpServer = localhost
[container]
user = root
javaHome = /usr/lib/jvm/java-1.7.0-openjdk-1.7.0.65.x86_64/jre
[sshd]
listenAddress = *:29418
[httpd]
listenUrl = proxy-http://192.168.1.78:8081/
[cache]
directory = cache
3 ) 添加用户,可以添加多个,这个用户是作为web页面的登陆用户使用的
# touch /var/gerrit-site/passwd # htpasswd /var/gerrit-site/passwd [new-user-name]
4) 启动、关闭、重启gerrit
# /var/gerrit-site/bin/gerrit.sh start # /var/gerrit-site/bin/gerrit.sh stop # /var/gerrit-site/bin/gerrit.sh restart
配置Apache
1) 配置反向代理
/etc/httpd/conf/httpd.conf
…
<VirtualHost *:80>
ServerName localhost
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 /var/gerrit-site/password
Require valid-user
</Location> ProxyPass / http://192.168.1.78:8081/
</VirtualHost>
2)关闭selinux,需重启
# vi /etc/selinux/config
…
SELINUX=disable
…
或者,本次有效
# setenforce 0
3) 设置权限
# chown –R apache:apache /var/gerrit-site
4) 关闭防火墙,让局域网用户访问
# service iptables stop
5) 重启httpd服务
# service httpd restart
Gerrit的使用
创建项目

创建branch

配置项目权限
项目评审过程中,需要几个条件,代码才能最终提交到分支
l Review >=+2
l Verify >=+1
所以如果配置为每人评审最多只能+1时,则必须最少两人才能完成评审过程,当然也可以让一个用户组可以一次性review +2

配置项目权限时需要根据需要进行配置,选好拥有权限的用户组

客户端获取代码
Git clone http://[ip]:[port]/[project-name].git
如git clone http://192.168.1.78/hello.git
添加或更改文件 提交审核

此处提交代码的位置有点奇怪:HEAD:refs/for/master,其实是gerrit规定的方式,最后的master是分支名称
提交代码的快捷方式:
[remote "review"]
pushurl = http://192.168.1.78/hello.git
push = HEAD:refs/for/master
这样以后就直接:
# git push review
其中用户密码在webui页面右上角的“setting”à”HTTP Password”

评审
进入评审界面
此时可以看到页面有“Review”按钮,点击即可评审代码

评审或确认
此时可以看到用户一次评审只能+1 这是在项目的access中设置的,此项目评审结果必须>=2才可以提交,所以必须由两个用户分别评审

确认合并
待满足gerrit对项目的要求(review >=2 verify >=1)后,页面中会出现“submit patch set 1”的按钮,点击将分支合并到主干中

用户会发现,提交完毕后,“revert change”按钮出现,也就是可以revert刚才的提交动作

重新获取代码
此时在其他地方重新获取项目的分支代码,即可看到代码更新过了
git pull origin master
Gerrit的安装和使用说明的更多相关文章
- VirtualBox安装及使用说明和虚拟机安装XP系统图文教程
virtualbox是一款开源的虚拟机软件,它能够支持多种操作系统的安装如:Solaris.Windows.DOS.Linux.OS/2 Warp.BSD等系统作为client操作系统,而且最新版本号 ...
- Sonar安装与使用说明
我总结的Sonar安装与使用说明,需要的可以去网盘下载. 网盘地址: http://pan.baidu.com/s/199BII
- Nexus安装、使用说明、问题总结
Nexus安装.使用说明.问题总结 1 . 私服简介 私服是架设在局域网的一种特殊的远程仓库,目的是代理远程仓库及部署第三方构件.有了私服之后,当 Maven 需要下载构件时,直接请求私服,私服上存在 ...
- gerrit上的commit msg中关联jira单号(含gerrit的安装)
这个问题折腾了很久,前期后后大概一个月吧,终于搞定了,查了很多资料,有的不完整,有的完全就不能用,有的没说完整,所以一定要记录下来,我的心血啊. 由于公司在用的gerrit的是正式环境中的,大家都在使 ...
- vue之vue-cookies安装和使用说明
vue之vue-cookies安装和使用说明npm官方链接:https://www.npmjs.com/package/vue-cookies 安装,在对应项目根目录下执行:npm install v ...
- Fiddler4入门--手机抓包工具安装和使用说明
Fiddler4入门--手机抓包工具安装和使用说明.电脑最好是笔记本连同一个wifi,这样能和手机保持统一局域网内. 很多区块链dapp项目方风控做的很差,利用fiddler抓包分析找一些漏洞,然后利 ...
- charles抓包的安装,使用说明以及常见问题解决(windows)
charles抓包的安装,使用说明以及常见问题解决(windows) https://blog.csdn.net/zhangxiang_1102/article/details/77855548
- Kibana安装及使用说明
Kibana安装及使用说明 Kibana是一个针对Elasticsearch的开源分析及可视化平台,用来搜索.查看交互存储在Elasticsearch索引中的数据. 官方地址:https://www. ...
- 路由器逆向分析------firmware-mod-kit工具安装和使用说明
本文博客地址:http://blog.csdn.net/qq1084283172/article/details/68061957 一.firmware-mod-kit工具的安装 firmware-m ...
随机推荐
- 【XSY2744】信仰圣光 分治FFT 多项式exp 容斥原理
题目描述 有一个\(n\)个元素的置换,你要选择\(k\)个元素,问有多少种方案满足:对于每个轮换,你都选择了其中的一个元素. 对\(998244353\)取模. \(k\leq n\leq 1525 ...
- python学习日记(文件操作练习题)
登录注册(三次机会) name = input('请注册姓名:') password = input('请注册密码:') with open('log',mode='w',encoding='utf- ...
- 洛谷P5069 [Ynoi2015]纵使日薄西山(树状数组,set)
洛谷题目传送门 一血祭 向dllxl致敬! 算是YNOI中比较清新的吧,毕竟代码只有1.25k. 首先我们对着题意模拟,寻找一些思路. 每次选了一个最大的数后,它和它周围两个数都要减一.这样无论如何, ...
- Codeforces | CF1033D 【Divisors】
题目大意:给定\(n(1\leq n\leq500)\)个数\(a_1,a_2\cdots,a_n(1\leq a_i\leq2\cdot10^{18})\),每个数有\(3\sim5\)个因数,求\ ...
- NOIp2018 游记
作为一名蒟蒻,对于NOIp当然是不抱什么希望.所以就只能在比赛中吸取经验咯... Day0 害怕书到用时方恨少,疯狂打板子(玩电脑) Day1 来到考场了,发现键盘空格按不起,觉得非常尴尬,然后他告诉 ...
- CentOS下Denyhosts的安装和使用
安装 默认yum就可以进行安装 yum install denyhosts* -y 配置 配置文件路径: /etc/denyhosts.conf ; YUM安装时其实已经配置好了大部分,我们自己稍作改 ...
- 【POJ2226】Muddy Fields
题目大意:给定一个 N*M 的图,图中有一些格子不能被任何东西覆盖,现有一些宽度为 1,长度任意的骨牌覆盖这些可以被覆盖的格子,骨牌之间可以重叠,求将所有可以被覆盖的格子覆盖所需的最小骨牌数是多少. ...
- 【精】搭建redis cluster集群,JedisCluster带密码访问【解决当中各种坑】!
转: [精]搭建redis cluster集群,JedisCluster带密码访问[解决当中各种坑]! 2017年05月09日 00:13:18 冉椿林博客 阅读数:18208 版权声明:本文为博主 ...
- Oracle的DQL
基本查询: 链接语句: sqlplus scott/tiger@192.168.56.101:1521/orcl SQL> --清屏 SQL> host cls (host clear) ...
- struts2 OGNL配和通用标签和其它标签的使用
三.OGNL配合通用标签的其他使用 1.iterator标签(很重要) 动作类 package com.itheima.web.action; import java.util.ArrayList; ...