扩展

版本历史

见官网:https://www.gerritcodereview.com/releases/README.md

警告

该网站是外国网站,需要翻墙才可查看。

样式优化

Gerrit系统的前端是由GWT(不懂可见GWT百度百科)生成的,因此样式较为简陋。但其提供了扩展,我们可以自定义样式。

你可以到https://github.com/Ecwid/gerrit-css-theme下载作者编写的css文件,将其放到review_site/etc/目录下,重启系统即可看到新的界面样式。

备注

请删掉css文件开头中的google字体链接,否则浏览器会去加载该字体,直至失败,导致页面加载时间过久。

插件下载

你可以到https://gerrit-ci.gerritforge.com/下载对应大版本的最新插件,将插件拷贝到review_site/plugins/目录下,重启系统即可使用。

警告

该网站一直不稳定,若无法访问,则等待几分钟再次访问即可。

RestApi

通过调用系统提供的接口,你可以在其他系统或脚本中操作gerrit,这有利于自动化的实现。

工具

Python:pygerritpygerrit2

点此查看pygerrit代码示例

接口

系统提供的接口可见【你的系统】->【Documentation】->【REST API】,或网上别人的系统文档

管理员命令

系统提供的SSH命令可见【你的系统】->【Documentation】->【Table of Contents】->【SSH=>Command Line Tools】,或网上别人的系统文档

以下列出几个常用的命令:

1. 查看ssh连接数(可用于查看有多少人在做代码拉取或推送操作,有利于判断服务器的压力):
ssh -p 29418 review.example.com gerrit show-queue -w

2. 查看所有缓存(分析服务器缓存情况):
ssh -p 29418 review.example.com gerrit show-caches

3. 查看可刷新缓存(更新数据):
ssh -p 29418 review.example.com gerrit flush-caches --list

4. 刷新指定缓存——项目列表:
ssh -p 29418 review.example.com gerrit flush-caches --cache projects

5. 查看所有项目名:
ssh -p 29418 review.example.com gerrit ls-projects

6. 设置项目合并commit方式(merge->rebase)
ssh -p 29418 review.example.com gerrit set-project example --submit-type REBASE_IF_NECESSARY

7. 查询changes:
ssh -p 29418 review.example.com gerrit query --format=JSON status:open project:tools/gerrit limit:2
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20

Hooks钩子

Gerrit系统支持在做代码操作时,产生相应事件,触发钩子脚本执行指定任务。如在代码入库时,触发自动化测试等。我们可以在review_site/hooks/目录下创建指定名字的脚本,让相应事件发生时执行指定任务,具体事件和脚本名可见扩展-Hooks

容器化和k8s部署

https://github.com/linjinze999/gerrit-docker

Sonarqube代码检查

可结合Sonarqube代码检查,在工程师提交代码的时候,及时地做代码质量检查,以便及时修改,增加代码的可读性与维护性,减少后期修改成本。

部署方式暂时见:https://github.com/linjinze999/Operation/tree/master/SonarQube

上次更新: 2018-7-29 20:17:36