Finer-grained control over default branch protections
## Opportunity
The option to set a [default branch protection](https://docs.gitlab.com/ee/user/group/#change-the-default-branch-protection-of-a-group) was launched for groups in https://gitlab.com/gitlab-org/gitlab/-/issues/7583 and for the admin area in https://gitlab.com/gitlab-org/gitlab/-/issues/211944. Initially, it was shipped to allow for a `not protected` option which permits developers to push to the default branch without being a maintainer.
As the functionality for protected branch configuration options grew, so did the expectations for the level of control. The 4 options that are currently available do not cover all the variations of the protected branch.
## Proposal
Re-locate specific settings and expand on those settings related to default branch and default branch protections. The setting will be relocated to better map to the default branch settings in the repository page. An additional option to enforce the configuration through the cascading model will be added.
Each item below is a specific part of the proposal.
These issue are less complex, and are more or less just lifting and shifting the feature.
1. [Merge default branch protection and default initial branch together under repository & update the section header and description](https://gitlab.com/gitlab-org/gitlab/-/issues/340403)
1. [Remove the delete branch verbiage from the dropdown options for default branch protections](https://gitlab.com/gitlab-org/gitlab/-/issues/340566)
1. [Show disabled state for owners, when `Allow owners to manage default branch protection per group` is _not_ checked](https://gitlab.com/gitlab-org/gitlab/-/issues/340400)
1. [Replace the dropdown selection for default branch protection with a form that matches protected branches](https://gitlab.com/gitlab-org/gitlab/-/issues/340401)
- **Question for engineering:** Should we convert this to vue?
---
~"Next Up" continue refining these ideas to resolve conflicts in logic that can make the ~UX confusing.
1. [Add on the cascading setting option](https://gitlab.com/gitlab-org/gitlab/-/issues/340402)
1. [Replace "allow owners..." with cascading setting framework](https://gitlab.com/gitlab-org/gitlab/-/issues/340399)
## Who is the buyer?
gitlab~2278657
## Resources
[Open Figma →](https://www.figma.com/file/mfWie0YINLyiQBui4ddzhM/%F0%9F%94%92-and-6671-Finer-grained-control-over-default-branch-protections?node-id=1%3A79)
<!-- triage-serverless v3 PLEASE DO NOT REMOVE THIS SECTION -->
*This page may contain information related to upcoming products, features and functionality.
It is important to note that the information presented is for informational purposes only, so please do not rely on the information for purchasing or planning purposes.
Just like with all projects, the items mentioned on the page are subject to change or delay, and the development, release, and timing of any products, features, or functionality remain at the sole discretion of GitLab Inc.*
<!-- triage-serverless v3 PLEASE DO NOT REMOVE THIS SECTION -->
epic