Gerrit的使用
前公司使用的是Github+SourceTree,现公司使用的是Gerrit+???进行代码管理维护,所以我需要尽快熟悉该工具的使用, 下面根据我的历程,分享一下相关工具的使用。
Gerrit简介
百科:https://baike.baidu.com/item/Gerrit
一种免费、开放源代码的代码审查软件,使用网页界面。利用网页浏览器,同一个团队的软件程序员,可以相互审阅彼此修改后的程序代码,决定是否能够提交,退回或者继续修改。它使用Git作为底层版本控制系统。
官网:https://www.gerritcodereview.com/
The main function of Gerrit is code review, We can use it to discuss code/serve Git/manage workflows.
下载:直接从其官网的下载项上下载即可,注意其下载下来的文件为war格式的压缩包。
![](https://img.haomeiwen.com/i1026028/091c6c3e2066051a.png)
Gerrit安装
这里仅介绍其在Win10平台的安装情况,其它平台,可自行安装即可。与Github类似,其属于一个代码托管器,所以可以不安装搭建Gerrit服务器,而是直接使用Gerrit的官方服务器,直接在其网页界面中做code review等功能即可,当然也可以下载安装,在Linux平台搭建自己的Gerrit服务器(如下步骤)
1)解压下载好的war包
java -jar gerrit-3.1.3.war init -d ~/review_site这里的review_site是解压出来的包名,最好不要修改。避免不必要的错误
注意这里,需要安装Java环境:
sudo add-apt-repository ppa:openjdk-r/ppa
sudo apt-getupdate
sudo apt-getinstall openjdk-13-jdk
2)安装应用
运行安装程序,选择默认配置,直至完成安装
3)验证测试
打开浏览器输入 loccalhost:8080。能看到gerrit的界面就成功了
当然了,作为一名优秀的程序员,不能止步于默认配置。所以,按需修改配置文件
sudo gedit ~/review_site/etc/gerrit.config
![](https://img.haomeiwen.com/i1026028/df1ac9ac77ee0c78.png)
4)当然你可能还需要安装Git, Apache2 和 Gitweb才是完整地使用Gerrit服务
Apache2:
sudo apt-get install apache2
sudo vi /etc/apache2/httpd.conf
![](https://img.haomeiwen.com/i1026028/5f11d45df224bf32.png)
cd /etc/apache2/mods-enabled后开启SSL、Proxy、Rewrite等模块:
![](https://img.haomeiwen.com/i1026028/105ec3cc26d6b38d.png)
Gitweb:
sudo apt-get install gitweb
sudo gedit ~/review_site/etc/gerrit.config
添加从上面路径的最后一行
![](https://img.haomeiwen.com/i1026028/e8e6723feae8dbbb.png)
启Gerrit和Apache2
![](https://img.haomeiwen.com/i1026028/26550fe7d536b570.png)
Gerrit代码克隆
因为Gerrit是基于Git底层版本控制系统,所以只要使用Gerrit进行任何操作(如克隆,代码提交,分支河滨等等),就必须安装Git。
Git安装
下载->安装->添加环境变量->验证使用git bash等
Gerrit账户配置
1)若是官方服务器,企业用则使用企业分配给你的账号和邮箱;私有账户则使用个人注册的账户和邮箱
2)若是自建Gerrit服务器,使用个人注册的账户和邮箱即可
For example:
git config --global user.name "Stephen Xiao"
git config --global user.email "stephen2015@126.com"
Gerrit ssh key 配置
1)Gerrit clone时采用的时SSH拉取方式(貌似不像Github也支持https),所以必须安装认证(公钥),不然会报如下错误:
Permission denied(publickey)
2)生成SSH key,输入如下命令,一路按回车即可(不要随便输入其他东西)
ssh-keygen -t rsa
3)获取使用用户的公钥,输入如下命令
cat ~/.ssh/id_rsa.pub
![](https://img.haomeiwen.com/i1026028/32229347d315d103.png)
4)将输出的内容粘贴Gerrit的Add SSH Public Key中
![](https://img.haomeiwen.com/i1026028/e79317fdfa09c029.png)
Gerrit clone拉取
1)在Gerrit上找到自己所要拉取分支的SSH URL
![](https://img.haomeiwen.com/i1026028/adaf63970760986f.png)
2)本地clone,SSH拉取
![](https://img.haomeiwen.com/i1026028/af86b98b782ab789.png)
总结:
1)学习Gerrit的代码审核系统是非常有必要的,它可以提高我们的代码质量和项目管理能力。
2)安装配置使用和Github及其相似,有不清楚的地方,大家可自行查看相关介绍。
3)如果clone时遇见diffie-hellman-group1-sha1的错误,请参考下面的博客:
https://www.cnblogs.com/suwyer/p/9256102.html
参考链接:https://www.jianshu.com/p/0593d888b2fe