由于GitHub创建public项目,默认default branch是main,而我想改成master。

共有两种方法,方法一就是去GitHub后台改,方法二是GitHub后台+远程命令改。

从Git作为版本管理工具的本质考虑,推荐最好使用方法一,不建议方法二。

有人可能觉得改个分支名还得登录GitHub账号,好麻烦,我直接命令行操作得了,于是就有了方法二。
远程命令可以直接删除非default分支,但不推荐,因为很容易造成版本混乱。而对于我这种default分支还是无法删除(强制也不行),仍然无法避免登录GitHub修改default分支。
为什么不建议用命令重命名分支?
因为git是版本管理工具,而网上的重命名方法是用命令删除远端分支(不满足时甚至强制删除),分支的删除很容易导致版本混乱
因此,对于重命名、删除分支这种操作,需要git远程管理端来操作,也就是GitHub上操作。

1、方法一:git远程管理端后台 重命名【推荐】

先说正常的比较好的方法,按理说就该这么弄。
GitHub的repository-setting-branches-Rename branch(笔)

2、方法二:git后台+远程命令 重命名【不推荐】

解决过程(实现不了):

网上查到的命令行修改远程分支的方法:重命名本地分支-删除远程分支-上传新的本地分支到远程。
参考:https://blog.csdn.net/qq_37148270/article/details/107106392

发现远程的main分支死活删不掉,原因是GitHub默认把main设为了default,相当于main这个分支在使用着,肯定是不能删掉的。

因此,最终还是需要登录服务端后台(GitHub)修改:

step1:重命名本地分支-上传新的本地分支到远程-关联修改后的本地分支与远程分支

// old_name=main,new_name=master
git branch -m new_name           // 重命名当前分支为new_name=master
git branch -m old_name new_name  // 重命名old_name=main分支为new_name=master
git push origin new_name         // 我这里就是master
git branch --set-upstream-to origin/new_name  // 关联修改后的本地分支与远程分支master

step2:GitHub手动把default分支改为新分支master
setting-branches-Switch to another branch(双向箭头,具体见上图)

step3:命令删掉远程旧分支

git push origin --delete main
posted on 2022-10-18 17:30  西伯尔  阅读(1208)  评论(0编辑  收藏  举报