由于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
作者:西伯尔
出处:http://www.cnblogs.com/sybil-hxl/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。