STM32开发 -- Gerrit的详细使用

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_29350001/article/details/87004721

一、gerrit简介

参看:维基百科 - Gerrit
Gerrit,一种开放源代码的代码审查软件,使用网页界面。利用网页浏览器,同一个团队的软件开发者,可以相互审阅彼此修改后的代码,决定是否能够提交,回退或是继续修改。它使用版本控制系统Git作为底层。

二、配置Gerrit帐户

参看:修改git config配置文件
参看:git config配置
参看:配置文件git config介绍

1、git 的配置

查看git的版本

 git --version

查看git配置信息

  git config --list

config list分全局和局部,在根目录下执行git config --list显示为全局配置,在git的仓库目录下执行,显示的是全局和局部的配置信息。

配置git的全局邮箱和用户名使用

 git config --global  user.name 'XXX' 
 git config --global  user.email 'XXX' 

配置git的当前仓库邮箱和用户名配置有2种方式,1。直接不使用–global 2.使用local

  git config   user.name 'XXX' 
  git config   user.email 'XXX' 
  git config  --local  user.name 'XXX' 
  git config  --local user.email 'XXX' 

设置完用 git config --list进行检验

查看git提交记录

  git  log

git别名(alias)的配置

比如对git status 设置别名

  git config --golbal alias.st  status

使用:git st 相当于 git status

pull ,push等命令设置别名同上。

git 默认选项的配置(pull.rebase)

git  config --global pull.rebase true

设置完用 git config --list进行检验

git config的原理

git 配置分3个 级别,–system --global --local

git读取的优先级依次 --system < --global <–local

–global 对git的操作git config内容保存在.gitconfig的文件下

–local对git的操作git config内容保存在.git/config的文件下

我主要修改了一下几处:
在这里插入图片描述
当然如果你觉得逐个配置比较麻烦,你也可以更改git 的配置文件~/.gitconfig解决一键式配置问题。

[user]
    name = XXX
    email = [email protected]

[core]
    editor = vim

[color]
    ui = auto

[url "ssh://XXX@address/"]
    InsteadOf = "gerrit:"

2、创建ssh config配置文件

参看:使用ssh config配置文件来管理ssh连接

在~/.ssh/ 下创建 config文件,并以如下格式编辑配置文件:

Host 是我们在输入命令的时候的名字(gerrit)
User 指定的登陆用户名
Port 指定的端口号
Hostname 是目标主机的主机名,也就是平时我们使用ssh后面跟的地址名称
IdentityFile 指定的私钥地址
StrictHostKeyChecking no
UserKnownHostsFile /dev/null

3、创建SSH Key

在git bash上输入
ssh-keygen -t rsa –C “[email protected]

可以发现用户主目录下,生成id_rsa和id_rsa.pub这两个文件
在这里插入图片描述

4、Gerrit网页配置

参看:代码检视工具Gerrit的日常使用

Email激活

Gerrit账户的设置界面,点击“Contact Information”进入Email Register页面,输入自己的邮箱账户(此邮箱需要与自己的Git配置一致)。可以配置多个Email账号。在这里插入图片描述

SSH key配置

通过以下命令生成并读取本机ssh key:

cat ~/.ssh/id_rsa.pub

Copy key的内容,在Gerrit账户的设置页面“SSH Public Key”中加入即可
在这里插入图片描述

5、下载

之后便可在gerrit的每个project中,如下图所示位置找到并使用对应http下载命令
在这里插入图片描述

6、测试与Gerrit服务器的连接

$ ssh-add
$ ssh -p 端口号 <username>@address

在这里插入图片描述

三、Gerrit代码审核

1、用refs/for提交commit到Gerrit进行审核

git push origin HEAD:refs/for/<branch>    #提交到gerrit进行review

2、代码审核

参看:Gerrit使用简介
代码正确提交到分支 refs/for/* 后,需要登录Gerrit界面为刚才的提交添加相应的审核者。

1). Author点击change号进入详细界面
2). Author完成verify并打分+1
在这里插入图片描述
3). 添加审核人Reviewer,如team leader
在这里插入图片描述
4). Reviewer认真review code和commit message内容,并反馈review信息,如果认为修改不妥,可打负分添加comment驳回修改。通过verify +2。
在这里插入图片描述
5). 全部review通过后,Author点击submit按钮完成代码入库,change为merged状态
在这里插入图片描述

3、注意:

1). 代码有问题的情况,需本地修改后重新上传,注意保持change-id不变(git commit --amend)
2). submit失败时,可以尝试rebase后重新提交
3). 无效change请及时关闭abandon处理,避免长时间停滞在open状态
4). 修改提交到分支上,可以使用cherry-pick功能
5). 代码回退请使用revert功能

猜你喜欢

转载自blog.csdn.net/qq_29350001/article/details/87004721