git how to change default branch for everything I do?

Viewed 11203

Because of github changing the default branch from master to main all of my pushes end up in a separate branch instead of the main one and I can't change the default. When I start a program and make my first push, git tells me main doesn't exist and I always have to push to master instead.

2 Answers

Following the FAQ article "How to Rename the master branch to main in Git", and the GitHub documentation itself, you can:

  • rename your local branch from master to main: git branch -m master main
  • push to main: git push -u origin main
  • update your default branch on GitHub side:
    enter image description here
  • Then delete the remote master branch: git push origin --delete master

Finally, as I documented in "How can I create a Git repository with the default branch name other than "master"?", don't forget a:

git config --global init.defaultBranch main

(See commit 32ba12d, with Git 2.28+, Q3 2020)

Your next new repositories will use the right branch name by default.

Another way to change your default branch in your local machine, as pointed here, is to edit your ~/.gitconfig file and add or edit the following lines:

[init]
  defaultBranch = main

I prefer this option because I've already had a bunch of configurations in my ~/.gitconfig file, so for me is better to lock it before and check whether the wanted configuration exists or not and if yes how it's set.

Related