安装 gerrit

gerrit常被用于一个开发团队用浏览器共同维护软件 ,基于 java+mysql
底层是Git,所以安装前确保git已被安装

1、安装jdk,因为gerrit用java开发的需要,java运行环境,
yum search openjdk
yum install java-1.7.0-openjdk.i686

2、安装git,这个步骤很简单
yum  install git

让git支持中文
git config --global core.quotepath false
git config --global i18n.logoutputencoding utf8
git config --global i18n.commitencoding utf8

3、下载gerrit,我用的是gerrit-2.8.1.war,将文件上传至linux,我放在/usr/local/目录下
cd /usr/local/
wget http://gerrit-releases.storage.googleapis.com/gerrit-2.8.1.war
java -jar gerrit-2..8.1.war init -d gerrit-site
一路回车........


自此,Gerrit安装过程就完成了,可以在windows平台下通过web访问Gerrit(当然也可以直接用虚拟机本地的浏览器访问),即在浏览器中输入http://10.10.1.234:8080。但是需要注意的是:我用的linux是CentOS,需要先关掉防火墙才能连接上


注意:http://10.10.1.234:8080 要以ip的方式访问,不要用域名访问,用域名的的方式访问,会多一次跳转,跳转到ip形式访问(可能和下面的参数:canonicalWebUrl = http://203.195.187.200:8080/ 有关

安装 gerrit - m15142436758 - LOWPING的博客

 登录的第一个用户将自动成为管理员(Account ID为1000000的就是管理员),所有后续登录的用户都是无权限用户(需要管理员指定权限)。如果你选择了development_become_any_account,在页面顶端会有一个Become链接,通过它可以进入注册/登录页面。


4、启动,停止服务

cd /usr/local/gerrit-site/bin

./gerrit.sh start

./gerrit.sh stop

./gerrit.sh restart


5、支持ldap验证,email

cd  /usr/local/gerrit-site/etc

vim gerrit.config

支持ldap

修改

[gerrit]

        basePath = git

        canonicalWebUrl = http://203.195.187.200:8080/      经过测试,这里不能写localhost,改成真是ip

[auth]

        type = LDAP          把OPENID 改成LDAP

增加ldap配置

[ldap]

        server = ldap://localhost

        accountBase = ou=People,dc=1v,dc=cn

        groupBase = ou=group,dc=1v,dc=cn

accountFullName = ${cn}


支持email

[sendemail]

        enable = true

        smtpServer = smtp.exmail.qq.com

        smtpUser = luxfang@1v.cn

        smtpPass = ****

        from = Admin<luxfang@1v.cn>

        smtpServerPort = 25

6、配置支持gitweb
1、编辑配置文件,让gerrit能找到gitweb的安装目录就行了
vim /data/gerrit/etc/gerrit.config
添加
[gitweb]
        cgi = /var/www/git/gitweb.cgi
2、重启gerrit

7、升级gerrit
下载更高版本的软件包,覆盖安装就OK了
8、gerrit修改一些东西有些非常麻烦,需要登入gerrit的H2数据库
1、进入 gerrit-2.8.1.war所在的目录
java -jar gerrit-2.8.1.war gsql -d /data/gerrit

一般常用的命令
show  tables;
用户一般在  accounts  中
组一般在     account_groups   中

2 删除project
直接到gerrit_home/git/删除对应project就行

9、迁移gerrit

将gerrit从A地迁移到B地
1:在B地安装好与A地相同的版本的gerrit
2:将A地gerrit_home下的git , db 目录复制到 B地的gerrit_home下

更多信息:相关链接

http://blog.csdn.net/benkaoya/article/details/8680886


10、gerrit 权限

refs/*   下常用的权限

	read    获取整个仓库数据
	owner  	有这个权限的用户相当于该项目的创建者   

refs/heads/   下常用的权限
refs/heads/*  	
	对所有分支有效
refs/heads/branch_name
	对指定分支有效
	
	push    直接提交到某个分支
	create  reference 创建分支,或轻量级的tag
	Label Code-Review  审核提交(不能再refs/for/*分指上)
	Label Code-Review(+2)  + Submit 提交审核通过的代码(不能再refs/for/*分指上)
	Submit 提交(不能再refs/for/*分指上)
	Push Merge Commits   在master分支上做了merge操作,且要push master时需要的权限(一般用与refs/*搭配,且不包含push权限)
	abandon  删除待审核的提交,提交者无须此权限也可操作(不能再refs/for/*分指上)
	Remove Reviewer 删除审核列表中的审核成员,提交者无须此权限也可操作
	Forge Author 和 Forge Committer 当提交的用户账号和邮箱与服务器不对时,用这2个权限跳过验证

refs/for/refs/heads/
refs/for/refs/heads/* 
	对所有分支有效
refs/for/refs/heads/branch_name
	对指定分支有效
	
	push 	只能提交到review,不能直接提交

refs/tags/*   下常用的权限
	create reference push轻量级标签
	Push Annotated Tag  push含附注的标签
	Push signed Tag  push含附注的标签
常用配置案例
Reference:	refs/*
Read
Push Merge Commit              允许merge操作
Label Code-Review              和submit权限一起组成,决定审核是否通过
Submit

Reference:	refs/for/refs/heads/master  master分支上的提交必须经过审核
Push 

Reference:	refs/heads/first   first分支上可以直接提交
Push

gerrit权限覆盖

例子1:除了master分支,其他分支可直接提交安装 gerrit - m15142436758 - JoyBank的博客

  例子2:只有master分支可直接提交,其他分支不行
安装 gerrit - m15142436758 - JoyBank的博客
 


仍然还有个别不常用的命令,未能明确证实其用法

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值