Использование API GitLab для ограничения того, кто может создавать новые ветви из защищенной ветви

# #gitlab #gitlab-api

Вопрос:

Я работаю над автоматизацией процесса создания репозитория. Я хочу иметь основную ветвь вместе с набором ветвей, автоматически созданных из нее. Я использую python-gitlab, но при необходимости могу использовать HTTP-запросы.

Моя проблема в том, что я не хочу, чтобы разработчики могли ветвиться от main (т. Е. Они должны работать только с незащищенными ветвями или другими ветвями, созданными из них). Они все равно должны иметь возможность создавать запросы на слияние из ветвей по умолчанию в main. Есть ли способ обеспечить это?

Код для ясности, на самом деле не требуется для понимания:

 p_branch = project.protectedbranches.create({  'name': 'main',  'merge_access_level': gitlab.MAINTAINER_ACCESS,  'push_access_level': gitlab.MAINTAINER_ACCESS  })      for branch_name in branch_names:  branch = project.branches.create({'branch': branch_name, 'ref': 'main'})  

LE: Это также означало бы, что эта опция будет отключена при попытке отредактировать файл в защищенной ветви (не создавая автоматически это уродливое имя ветви): изображение