Renaming branches remotely in Git

branch, git, rename

Solution

You just have to create a new local branch with the desired name, push it to your remote, and then delete the old remote branch:

$ git branch new-branch-name origin/old-branch-name
$ git push origin --set-upstream new-branch-name
$ git push origin :old-branch-name

Then, to see the old branch name, each client of the repository would have to do:

$ git fetch origin
$ git remote prune origin

NOTE: If your old branch is your main branch, you should change your main branch settings. Otherwise, when you run `$ git push origin :old-branch-name`, you'll get the error "deletion of the current branch prohibited".

Problem

If there is a repository that I only have `git://` access to (and would usually just push+pull), is there a way to rename branches in that repository in the same way that I would do locally with `git branch -m`?

Original source

Related problems