Gerrit使用教程

简介: Gerrit使用教程

概述

微信截图_20230626181009.pngGerrit,中文发音大致为 "杰瑞特"。

最初是为管理Android项目而产生。 最早由Python写成,第二版后,改成用Java与SQL

Go,Qt等知名项目使用Gerrit做代码审查

Gerrit分支自Rietveld。 Python之父Guido van Rossum在Google时开发了Mondrian(命名自荷兰画家皮特·蒙德里安),作为内部代码审查工具,后面开源时取名叫Rietveld。该名称为致敬荷兰设计师赫里特·里特费尔德(Gerrit Rietveld)。。所以也不难理解后面的fork版本为啥叫Gerrit

【老万】我看代码审查(一):工具的变迁

Gerrit的github地址

Gerrit的官网 https://www.gerritcodereview.com/

微信截图_20230626181050.png微信截图_20230626181119.png

安装

微信截图_20230626181131.png

微信截图_20230626181140.png

使用


可参考Go的Contribution Guide中关于Gerrit的部分

第一次给Go提交代码的开发者,可以用熟悉的github方式,Sending a change via GitHub

但更推荐Sending a change via Gerrit:

微信截图_20230626181317.png

简而言之:

  1. git clone 项目
  2. 切换分支,git checkout -b your_branch
  3. 修改文件,而后git add 要提交的文件
  4. git codereview change (这步和git的commit作用一样,但命令不同; 这步会跳出编辑框,输入commit信息,记得最后要加个换行)

(如果还要再次修改文件)

  1. 再次修改项目,再次git add 要提交的文件
  2. git codereview change   (会用新的改动amend掉老的commit)

(如果可以提交了)

  1. git codereview mail

例如:

微信截图_20230626181352.png

这样就会在面板中,有一个这样的change

微信截图_20230626181426.png

和通过github直接相比,这里的Owner会是你的名字,而非GerritBot


Sending multiple dependent changes

如果想提交多个独立的改动,形成一个Relation chain,就像这样

在每次修改并git add 相应文件后,不使用 git codereview change, 而是用git commit -s -m"xxxx信息"

最后再 git codereview mail 最近一次提交的commitId

微信截图_20230626181501.png

微信截图_20230626181531.png

最后git codereview mail 最近一次提交的commitId时可能会报错:

commit 075e77a: missing Change-Id in message footer

微信截图_20230626181543.png

这是因为提交信息中,没有加上Change-Id,

按照提示,执行 f=git rev-parse --git-dir/hooks/commit-msg ; mkdir -p $(dirname $f) ; curl -Lo $f https://gerrit-review.googlesource.com/tools/hooks/commit-msg ; chmod +x $f 后再试即可

成功提交后如下图所示

微信截图_20230626181645.png

不过看起来这种情况,用all: xxx来提交单次改动就行了,没有必要用 Relation chain


更多参考:

gerrit 使用教程(一)

【译】Go 语言项目源码贡献官方指导文档

Single-Commit Work Branches和Multiple-Commit Work Branches


这里可用来 测试练习


目录
相关文章
|
人工智能 缓存 开发工具
结合企业实践来规范你的Git commit(含插件使用指南)
结合企业实践来规范你的Git commit(含插件使用指南)
结合企业实践来规范你的Git commit(含插件使用指南)
|
网络安全 开发工具 数据安全/隐私保护
|
安全 数据库 数据安全/隐私保护
|
Java jenkins 网络安全
从零搭建 Gerrit 实现 code review
从零搭建 Gerrit 实现 code review
591 1
|
Java Linux 开发工具
Linux部署 Gerrit 教程 ——2023.07
Linux部署 Gerrit 教程 ——2023.07
1245 0
|
XML 开发工具 Android开发
Repo工作原理及常用命令总结——2023.07(下)
Repo工作原理及常用命令总结——2023.07(下)
3444 0
|
Shell 网络安全 开发工具
Gerrit✨Gerrit服务器简介 与 配置SSH keys
Gerrit✨Gerrit服务器简介 与 配置SSH keys
|
开发工具 git
成功解决:fatal: detected dubious ownership in repository at ‘E:/workspace/CSMarket‘。如何使用git工具通过命令行的形式
这篇文章分享了作者在使用Git工具初始化本地仓库时遇到的权限问题,提供了通过命令行解决Git仓库权限问题的方案,并介绍了如何使用Git命令行初始化项目、添加文件、提交以及关联远程仓库的步骤。
成功解决:fatal: detected dubious ownership in repository at ‘E:/workspace/CSMarket‘。如何使用git工具通过命令行的形式
|
Ubuntu Java 程序员
手把手教你搭建自己的git+gerrit代码评审服务器
搭建自己的git+gerrit代码评审服务器
2881 0
手把手教你搭建自己的git+gerrit代码评审服务器

热门文章

最新文章