当前位置:   article > 正文

【Git】代码托管评审平台--gerrit|Gerrit Code Review

gerrit

目录

前言

Gerrit简介

Gerrit安装

如何使用gerrit

​​​​​​​添加项目

已有项目与gerrit上建立的exist-project关联

git客户端访问gerrit

在网页完成code review

在gerrit 网页查看自己的提交记录

注意事项

gerrit的使用和配置

2. 配置Gerrit

2.1 获取账号和密码

2.2 注册邮箱

2.3 填写FullName

2.4 配置 SSH key

2.5 配置ssh下的config文件来管理ssh连接

2.6 配置git中的username和email

2.7 配置gerrit上代码commit的模板

Gerrit(2)图形介绍


前言

原文:关于Gerrit code review 介绍与安装;https://www.cnblogs.com/chenpingzhao/p/9337117.html

代码审核(Code Review)是软件研发质量保障机制中非常重要的一环,但在实际项目执行过程中,却因为种种原因被Delay甚至是忽略。在实践中,给大家推荐一款免费、开放源代码的代码审查软件Gerrit

 Code Review是什么

本地写代码 --->git push origin HEAD:refs/for/xxx推到gerrit平台托管,要请人员评审

---->评审人员code view,没有问题,点同意---->gerrit把代码push到远程仓。

Gerrit简介

Gerrit是Google为Android系统研发量身定制的一套免费开源的代码审核系统,它在传统的源码管理协作流程中强制性引入代码审核机制,通过人工代码审核和自动化代码验证过程,将不符合要求的代码屏蔽在代码库之外,确保核心代码多人校验、多人互备和自动化构建核验。

Gerrit之前的系统架构:

Gerrit之后的系统架构:

通过Gerrit机制将代码做分隔。

Gerrit适用性

几乎任何需要正式发布的项目都应当使用Gerrit来进行代码审查,如果Team中有新人,必须使用Gerrit确保代码质量。

工作流程

使用过git的同学,都知道,当我们git add --> git commit --> git push 之后,你的代码会被直接提交到repo,也就是代码仓库中,就是图中橘红色箭头指示的那样。

那么gerrit就是上图中的那只鸟,普通成员的代码是被先push到gerrit服务器上,然后由代码审核人员,就是左上角的integrator在web页面进行代码的审核(review),可以单人审核,也可以邀请其他成员一同审核,当代码审核通过(approve)之后,这次代码才会被提交(submit)到代码仓库(repo)中去。

无论有新的代码提交待审核,代码审核通过或被拒绝,代码提交者(Contributor)和所有的相关代码审核人员(Integrator)都会收到邮件提醒。


gerrit还有自动测试的功能,和主线有冲突或者测试不通过的代码,是会被直接拒绝掉的,这个功能似乎就是右下角那个老头(Jenkins)的任务。

整个流程就是这样。 在使用过程中,有两点需要特别注意下:

  1. 当进行commit时,必须要生成一个Change-Id,否则,push到gerrit服务器时,会收到一个错误提醒。
  2. 提交者不能直接把代码推到远程的master主线(或者其他远程分支)上去。这样就相当于越过了gerrit了。 gerrit必须依赖于一个refs/for/*的分支。

    假如我们远程只有一个master主线,那么只有当你的代码被提交到refs/for/master分支时,gerrit才会知道,我收到了一个需要审核的代码推送,需要通知审核员来审核代码了。
    当审核通过之后,gerrit会自动将这条分支合并到master主线上,然后邮件通知相关成员,master分支有更新,需要的成员再去pull就好了。而且这条refs/for/master分支,是透明的,也就是说普通成员其实是不需要知道这条线的,如果你正确配置了sourceTree,你也应该是看不到这条线的。

这两点很重要!!这两点很重要!!这两点很重要!!

Gerrit安装

3.1. 环境准备

  • ①. Linux,Gerrit需要Linux环境,ubuntu 或者  centos,这里使用Ubuntu;

  • ②. JDK,使用1.7版本就行

  • ③. MySQL,其实这个非必须,Gerrit自带的有H2数据库

  • ④. nginx/apache,作为认证和反向代理服务器;

  • ⑤. Maven, 在安装的过程中会下载一些jar文件;

  • ⑥. Git,用来拉取代码

3.2 java环境安装

下载:jdk-7u79-linux-x64.tar.gz JavaSE Upgrade

安装:sudo tar zxvf ./jdk-7u79-linux-x64.tar.gz -C /opt

配置:vim ~/.bashrc(针对当前用户) or vim /etc/profile(针对所有用户,推荐)

  1. export JAVA_HOME=/opt/jdk1.7.0_79
  2. export JRE_HOME=$JAVA_HOME/jre
  3. export CLASSPATH=$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH
  4. export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH

验证:

  1. java -version
  2. java version "1.7.0_79"
  3. Java(TM) SE Runtime Environment (build 1.7.0_79-b15)
  4. Java HotSpot(TM) 64-Bit Server VM (build 24.79-b02, mixed mode)

3.3 git环境

gerrit依赖,用来操作git repository

1

sudo apt-get install git

3.4 下载gerrit

1

wget  https://www.gerritcodereview.com/download/gerrit-2.12.4.war

3.5 apache2安装

1

sudo apt-get install apache2

验证:

1

service apache2 start

3.6 gerrit管理帐号

gerrit依赖,用来管理gerrit。

1

2

sudo adduser gerrit

sudo passwd gerrit

并将gerrit加入sudo权限

1

sudo visudo

gerrit  ALL=(ALL:ALL) ALL (为了测试方便,开最大权限)

3.7 配置gerrit

默认安装:

1

java -jar gerrit-2.12.4.war init --batch -d ~/review_site

更新配置文件:sudo vim ~/review_site/etc/gerrit.config

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

[gerrit]

        basePath = git

        canonicalWebUrl =

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/AllinToyou/article/detail/691251
推荐阅读
相关标签
  

闽ICP备14008679号