Skip to main content

This version of GitHub Enterprise was discontinued on 2022-06-03. No patch releases will be made, even for critical security issues. For better performance, improved security, and new features, upgrade to the latest version of GitHub Enterprise. For help with the upgrade, contact GitHub Enterprise support.

Renaming a branch

You can change the name of a branch in a repository.

People with write permissions to a repository can rename a branch in the repository unless it is the default branch. People with admin permissions can rename the default branch.

About renaming branches

You can rename a branch in a repository on your GitHub Enterprise Server instance. For more information about branches, see "About branches)."

When you rename a branch on your GitHub Enterprise Server instance, any URLs that contain the old branch name are automatically redirected to the equivalent URL for the renamed branch. Branch protection policies are also updated, as well as the base branch for open pull requests (including those for forks) and draft releases. After the rename is complete, GitHub provides instructions on the repository's home page directing contributors to update their local Git environments.

Although file URLs are automatically redirected, raw file URLs are not redirected. Also, GitHub does not perform any redirects if users perform a git pull for the previous branch name.

GitHub Actions workflows do not follow renames, so if your repository publishes an action, anyone using that action with @{old-branch-name} will break. You should consider adding a new branch with the original content plus an additional commit reporting that the branch name is deprecated and suggesting that users migrate to the new branch name.

Renaming a branch

  1. On your GitHub Enterprise Server instance, navigate to the main page of the repository.
  2. Above the list of files, click Branches. Branches link on overview page
  3. In the list of branches, to the right of the branch you want to rename, click . Pencil icon to the right of branch you want to rename
  4. Type a new name for the branch. Text field for typing new branch name
  5. Review the information about local environments, then click Rename branch. Local environment information and "Rename branch" button

Updating a local clone after a branch name changes

After you rename a branch in a repository on GitHub Enterprise Server, any collaborator with a local clone of the repository will need to update the clone.

From the local clone of the repository on a computer, run the following commands to update the name of the default branch.

$ git branch -m OLD-BRANCH-NAME NEW-BRANCH-NAME
$ git fetch origin
$ git branch -u origin/NEW-BRANCH-NAME NEW-BRANCH-NAME
$ git remote set-head origin -a

Optionally, run the following command to remove tracking references to the old branch name.

$ git remote prune origin