How do I rename a local branch which has not yet been pushed to a remote repository?
- Rename master branch for both local and remote Git repositories
- How do I rename both a Git local and remote branch name?
To rename the current branch:
git branch -m <newname>
To rename a branch while pointed to any branch:
git branch -m <oldname> <newname>
-m is short for
To push the local branch and reset the upstream branch:
git push origin -u <newname>
To delete the remote branch:
git push origin --delete <oldname>
To create a
git rename alias:
git config --global alias.rename 'branch -m'
On Windows or another case-insensitive filesystem, use
-M if there are only capitalization changes in the name. Otherwise, Git will throw a "branch already exists" error.
git branch -M <newname>