More granularity in "Default branch protection" options
As of GitLab CE 8.17.3, there are four options when selecting the 'Default branch protection' for a new project:
Not protected: Both developers and masters can push new commits, force push, or delete the branch.
Protected against pushes: Developers cannot push new commits, but are allowed to accept merge requests to the branch.
Partially protected: Developers can push new commits, but cannot force push or delete the branch. Masters can do all of those.
Fully protected: Developers cannot push new commits, force push, or delete the branch. Only masters can do any of those.
However, my preferred settings for projects are:
-
Allowed to Merge
:Developers + Masters
-
Allowed to Push
:no-one
I'd like my developers to be empowered to create MRs and commits, and to merge them using the UI. But I don't want anyone to be able to push to master
except GitLab as a result of a merged MR. I want master
to be 100% protected.
It doesn't seem like any of the four defaults give me this combination. Since there are two options for Allowed to merge
and three for Allowed to push
, I'd like to request that all six permutations are possible in the defaults. It seems to me that the easiest implementation would be to simply copy the two dropdowns from the project protected branch settings UI to the default project settings UI.
Many thanks!