Set the git default branch to "main"
What does this MR do?
In concert with the wider Git community, GitLab committed to changing the default branch from "master" to "main" in 14.0. This change has already happened on GitLab.com; this change enables it for self-managed instances as well.
GitLab has support for a custom default branch name which can be used to override this change if defaulting to "main" is inconvenient.
Unless overridden, this affects all new projects on all self-managed GitLab instances. Existing projects will not have their default branch changed.
The test suite still runs with the default branch set to master
. Follow-up work will be required to change that before this feature flag can be completely removed, but it's important that we ship with it enabled in %14.0, so we shouldn't block this change on that.
Screenshots (strongly suggested)
Various functionality with this FF enabled:
Placeholder text for default initial branch (when unset) changes
main
branch
Creating a new project has the initial commit go to the
main
branch
Snippets use the
Does this MR meet the acceptance criteria?
Conformity
-
I have included a changelog entry, or it's not needed. (Does this MR need a changelog?) -
I have added/updated documentation, or it's not needed. (Is documentation required?) -
I have properly separated EE content from FOSS, or this MR is FOSS only. (Where should EE code go?) -
I have added information for database reviewers in the MR description, or it's not needed. (Does this MR have database related changes?) -
I have self-reviewed this MR per code review guidelines. -
This MR does not harm performance, or I have asked a reviewer to help assess the performance impact. (Merge request performance guidelines) -
I have followed the style guides.
Availability and Testing
-
I have added/updated tests following the Testing Guide, or it's not needed. (Consider all test levels. See the Test Planning Process.) -
I have tested this MR in all supported browsers, or it's not needed. -
I have informed the Infrastructure department of a default or new setting change per definition of done, or it's not needed.
Related to #223789