简体   繁体   中英

How do I rename branch on the GitHub website?

I don't know how to run command line stuff. I just don't have the environment.

So I'm trying to rename a branch on the GitHub website. It was, by default, named patch-1 .

Is it possible to rename it on the site?

I just did it without downloading any code to my laptop and using only the GitHub site. The solution looks the same as @swcool's , but I want to add about the default branch.
In my case, the name of the renaming branch did not exist.

  1. Change the default branch (to the old branch you want to rename)

  2. Create a new branch (with a new name)

    This action will copy all the contents of the default branch (the branch with the old name) to the new branch (with a new name). At this time, you have two branches with the same code.

  3. Change the default branch (to the new one with a new name)

  4. Delete the old branch

I think you can, just create a new branch with the new name, and delete the old one on github.

More detail you can see here .

It is not possible to rename a branch from the Github website. You will need to do the following -

Setup your Git Environment

Follow this - https://help.github.com/articles/set-up-git

Rename branch locally & on Github

git branch -m old_branch new_branch # Rename branch locally
git push origin :old_branch # Delete the old branch
git push --set-upstream origin new_branch # Push the new branch, set local branch to track the new remote

If you don't want to install Git, clone the repo, rename the branch locally and push it back to GitHub , you can use the GitHub API for references :

  • create a new branch where the old one is:

     POST /repos/:owner/:repo/git/refs { "ref": "refs/heads/newBranchName", "sha": "<SHA1 of old branch>" }
  • delete the old branch :

     DELETE /repos/:owner/:repo/git/refs/heads/oldBranchName

That way, you will have "renamed" (create+delete) the branch without having git locally.

And, as commented by user3533716 below, use the GitHub API for listing branches to get those branch SHA1:

GET /repos/:owner/:repo/branches

Since Jan., 19th 2021, you now can rename a branch directly on github.com:

Support for renaming an existing branch :

You can now rename any branch, including the default branch, from the web.

分支重命名对话框 -- https://i2.wp.com/user-images.githubusercontent.com/2503052/105069955-a231fa80-5a50-11eb-982c-a114c9c44c57.png?ssl=1

If you've been waiting to rename your default branch from master to main , we now recommend doing so using this feature.

When a branch is renamed:

  • Open pull requests and draft releases targeting the renamed branch will be retargeted automatically
  • Branch protection rules that explicitly reference the renamed branch will be updated

Note: admin permissions are required to rename the default branch, but write permissions are sufficient to rename other branches.

To help make the change as seamless as possible for users:

  • We'll show a notice to contributors, maintainers, and admins on the repository homepage with instructions for updating their local repository
  • Web requests to the old branch will be redirected
  • A "moved permanently" HTTP response will be returned to REST API calls
  • An informational message will be displayed to Git command line users that push to the old branch

This change is one of many changes GitHub is making to support projects and maintainers that want to rename their default branch.

Branch names will not change unless the maintainer explicitly makes the change, however this new rename functionality should dramatically reduce the disruption to projects who do want to change branch names.

To learn more about the change we've made, see github/renaming .

To learn more, see Renaming a branch .

To rename a branch on the Github website, just go to your repo's home page, click on where it says "branches"

在此处输入图像描述

Then, find the branch you're interested in, click the pencil button

在此处输入图像描述

and from there, you can rename your branch. 在此处输入图像描述

If you want a GUI based solution - download the Git Client "GitKraken". It supports doing this from UI by right-clicking on the branch name and choosing "rename [branch name]".

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM