如何通过GitHub命令行将主分支从main改为master解决push认证问题?

原问题
我正在学习使用GitHub,操作时发现虽然已经在GitHub网站端的账号设置里将对应仓库的默认分支修改为master,但本地命令行的默认分支仍然显示为main。这个问题导致我每次执行git push命令时,认证流程都会出现诸多异常,我希望按照常规配置将主分支修改为对应origin的master分支,该如何操作?
操作步骤
- 进入本地对应Git仓库的根目录,将本地当前的
main分支直接重命名为master。该操作会完整保留main分支上的所有提交记录,不会造成代码丢失:git branch -m main master - 将本地重命名后的
master分支推送至远端origin,同时建立本地分支与远端master分支的上游跟踪绑定。完成绑定后,后续推送、拉取操作无需重复指定分支名:git push -u origin master - 清理本地存储的旧
main分支远端跟踪引用,避免后续Git自动同步时还尝试关联已不需要的main远端分支:git fetch origin --prune - (可选全局配置)如果希望后续所有新建的本地Git仓库,默认初始分支就是
master而非新版Git默认的main,可执行全局配置命令:git config --global init.defaultBranch master
避坑提示
- 无需手动删除本地的
main分支,重命名操作会自动切换当前工作分支到新的master分支 - 如果此前曾将本地
main分支推送至远端,记得在GitHub仓库端删除远端的旧main分支,避免后续分支关联逻辑混乱 - 完成上述配置后,本地分支名与远端默认分支完全匹配,执行
git push时不会再因为分支指向不匹配触发非预期的认证流程异常
内容的提问来源于stack exchange,提问作者Mostafa Yasser
相关产品推荐
相关产品推荐

