This tutorial explains how to rename the current local branch and remote branch.
How to rename a local branch in git
git branch -a command to list all local and remote branches
B:\nodetest>git branch -a * branch branch1 main remotes/origin/HEAD -> origin/main remotes/origin/branch remotes/origin/branch1 remotes/origin/main
Run, the below command to know only local branches
B:\nodetest>git branch * branch branch1 main
Step2#: There are two ways to rename a branch
Next, run the below commands, rename in the local repository
One approach: rename a branch that you need to check out and in
First switched to the branch you want to delete, using the below command
B:\nodetest>git checkout branch Switched to branch 'branch' Your branch is up to date with 'origin/branch'.
Currently, the current code is pointed to
git branch -m with the new branch name.
It renames from
B:\nodetest>git branch -m newbranch
Now, It is renamed and pointed to new branch name.
git branch gives new branch name.
B:\nodetest>git branch branch1 main * newbranch
another way: you can rename with any branch pointed.
branchis renamed in the local repository
B:\nodetest>git checkout main Switched to branch 'main' Your branch is up to date with 'origin/main'.
next, rename branch1 to newbranch1
B:\nodetest>git branch -m branch1 newbranch1
List out the local branch using the below command
B:\nodetest>git branch * main newbranch newbranch1
Changes are local only, which means, renaming the branch in locally, Push it to remote
First, delete the branch from the remote repository using the below command
git push origin :oldbranch
Next, Push a new branch name reference
git push origin newbranch:refs/heads/newbranch
Here are the execution of the command
B:\nodetest>git push origin :branch - [deleted] branch B:\nodetest>git push origin newbranch:refs/heads/newbranch Everything up-to-date
See list of all branch names,
branch is renamed to
B:\nodetest>git branch -a * main newbranch newbranch1 remotes/origin/HEAD -> origin/main remotes/origin/branch1 remotes/origin/main remotes/origin/newbranch
let’s rename branch1 in remote
B:\\nodetest>git push origin :branch1 - [deleted] branch1 B:\nodetest>git push origin newbranch1:refs/heads/newbranch1 Total 0 (delta 0), reused 0 (delta 0), pack-reused 0 remote: remote: To create a merge request for newbranch1, visit: * [new branch] newbranch1 -> newbranch1
Step5#: set upstream to remote branch
if there are references to old branches in local repository in a machine, change upstream by running the command
git branch --unset-upstream
How to rename a remote branch git
There are multiple ways to rename remote branches with git.
- One way, First, rename the local branch as per the above steps, next, push the changes to remote.
- Second, directly rename the remote branch and keep the old name the same
Run the below command directly to rename a remote branch
git push origin origin/oldbranch:refs/heads/newbranch :oldbranch