To rename your Git master branch to main, you must do the following steps:
-
Navigate to your repository in the command line and issue the following commands: -
git branch -m master main
-git push -u origin main
-
Change your default branch on GitHub by going to your GitHub repository in your browser, and navigate to
Settings > Branches
and click on the dropdown and switch frommaster
tomain
and clickUpdate
(this will only show if you have two or more branches). Themain
branch is now your default branch. -
Update the tracking of the branch from your command line with the following command: -
git branch -u origin/main main
-
Delete the old
master
branch by going to your GitHub repository in your browser, navigate to your branches page, and click theDelete this branch
button (the red trash bin icon). Yourmaster
branch is now gone.
If someone has a local clone of your repository, they can update their locals by following these steps:
- Got to the master branch:
git checkout master
- Rename master to main locally:
git branch -m master main
- Get the latest commits from the server:
git fetch
- Remove the link to origin/master:
git branch --unset-upstream
- Add a link to origin/main:
git branch -u origin/main
- Update the default branch to be origin/main:
git symbolic-ref refs/remotes/origin/HEAD refs/remotes/origin/main
- Delete origin/master completely:
git branch --remotes -d origin/master
Thanks Scott Hanselman for the instructions, you can read the full article here: Easily rename your Git default branch from master to main
If this was useful, you can buy me a coffee here. Thank you!
Yeah, it's a small price to pay and GitHub has handled everything server-side, but I get it, it still isn't fun. When technology meets humans it isn't always optimal from a technological perspective, but without kindness and humanity what's the point of technology?