我们有很多项目(很多存储库),我们正在使用 gerrit 进行代码审查。并非所有开发人员都可以访问所有项目,并且他们可能在不同的项目中具有不同的角色(开发人员、审批人等)。目前,每个项目都有一组组和自己的访问策略,这些策略在结构上与所有其他项目相同,并且变得难以管理。
一个例子:
项目:项目_A、项目_B
组:Project_A_Developer、Project_A_Approver、Project_B_Developer、Project_B_Approver
在 Project_A 的访问页面中,我设置 Project_A_Developer 可以推送到 /refs/for/refs/* 并且 Project_A_Approver 可以进行代码审查。
在 Project_B 的访问页面中,我设置 Project_B_Developer 可以推送到 /refs/for/refs/* 并且 Project_B_Approver 可以进行代码审查。
现在,每当我们调整流程时,我们都必须遍历所有项目的访问页面并进行相同的更改,这既繁琐又容易出错。
我们可以让所有项目从 All-projects 继承访问权限,但是我们必须让一个人成为 Developer 组的成员,他将成为所有项目的开发人员,这是我们不想要的。
我也尝试过与包括彼此在内的团体一起玩,但无法达到预期的结果。
问题:我们如何设置项目和组,以便从单个项目继承一般访问策略,但一个人可以对不同项目具有不同(或没有)访问权限?