GitLab 更改受保护分支的权限

Rat*_*ore 6 gitlab

我们最近迁移到 GitLab 自托管 (V14.3.0)

我们将 100 多个存储库迁移到 Gitlab,然后我们意识到,默认情况下只有维护人员才具有对 Gitlab 受保护分支的写访问权限。

有没有一种方法可以一次性更改多个存储库的以下设置,或者我们必须为每个存储库手动更改?

允许

我们想将“允许合并”从“维护者”更改为“开发者+维护者”

在主要组中,我们将其设置为以下内容,我希望这能够使其发挥作用,但运气不佳 - 群组许可

Sim*_*ner 7

手动方式可能是一个糟糕的方法,但 GitLab API 提供了很多关于该问题的功能。我不会编写脚本,但我会概述您可以使用的 API 以及使用它们的原因。

  1. 获取您想要更改的所有项目的列表 -项目 API

    GET /projects
    
    Run Code Online (Sandbox Code Playgroud)

    通过此端点,您将收到实例内所有项目的列表,用户可以访问这些项目 - 请注意,这是一个分页请求 - 因此仅调用它一次是不够的。

  2. 调整受保护的分支 - Protected Branches API

    使用第一部分中的项目 ID,您现在可以查询每个项目并更改保护。我们最终首先删除了保护并重新创建它们,因为事实证明它更容易。

无论如何,我建议使用脚本自动执行此操作,并且宜早不宜迟。由于某些项目可能会从自定义保护开始,这可能会使迁移变得更加困难。