如何检查 gerrit CL 中是否未添加组?

How to check if a group was not added in the gerrit CL?

我在一个大团队工作。我们使用 GitGerrit。为了通过广泛的审查系统确保代码质量,我们有一个 gerrit 组,我们希望为每个开发人员的每次提交(CL)添加该组,特别是对于我们需要保持稳定的 main 分支。该小组的所有审稿人都是高级成员,他们对每个 CL 进行独家审阅。但是,一些开发人员在不添加组的情况下合并他们的 CL(可能是无意的),我们不知道 CL 是否已经合并。为避免手动检查,我想检测 CL 中是否未添加该组(即所有组成员均未作为审阅者出现)。我该怎么做?

我可以使用来自 gerrit 的 API 吗?

使用gerrit query,您可以得到一个更改的审阅者:

ssh -p 29418 ${username}@${gerrithost} gerrit query commit:${sha1} --all-reviewers

审稿人如下:

allReviewers:
name: Tom
email: Tom@foo.com
username: tom

您可以添加 --format=json 以获得 json 中的输出。

我建议您在 Gerrit 的挂钩中自动将组添加到审阅者,例如 patch-set-created