github中main与master,master无法合并到main

文章目录

遇到问题

上传 github 时候,发现传上去的是 master,但是 github 竟然还有一个 main

背景

github 采用 main 替代 master 作为主分支不是出于技术背景,而是出于 2020 年全球范围内兴起的 "Black Lives Matter"

然后在 2020 年 6 月宣布将默认分支名称从 master 改为 main 了,,,

为什么 master 合并不到 main 上去呢?

从 Git 2.9 版本开始,Git 默认不允许合并没有共同祖先的分支,以此避免意外合并两个不同项

怎么做

shell 复制代码
git fetch origin
git checkout main
git merge master
# 可能提示错误:fatal: refusing to merge unrelated histories

git merge master --allow-unrelated-histories

然后你再正常提交

那这次你终于解决了,以后怎么办呢?

如果是本地已经有的项目,使用 master 分支名

shell 复制代码
# 重命名本地分支
git branch -M main

# 推送新分支到远程仓库
git push -u origin main

# 删除远程旧分支
git push origin --delete master

如果以后新项目想所有初始化项目都弄成 main 呢

shell 复制代码
git config --global init.defaultBranch main
相关推荐
福如意如我心意10 小时前
Git Worktree开发指南
git
峰向AI11 小时前
学生党/打工人必备:AI自动把课程视频变成讲义
github
其实防守也摸鱼14 小时前
教育信息技术应用创新---基础软件信息赛
运维·服务器·数据库·github·copilot
Patrick_Wilson15 小时前
为什么gitlab的MR会默认有一个merge commit
前端·git·gitlab
是乐乐啊呀15 小时前
版本控制 GIT 和 SVN
git·svn
0xR3lativ1ty17 小时前
AI本地部署工具火热趋势
github
夜鸣笙笙18 小时前
Git详细安装流程
git
LlmCraft|大模型工程实践19 小时前
14. CI/CD 流水线中集成 Docker:GitHub Actions 自动构建部署
ci/cd·docker·github
hulihutu4419 小时前
拒绝延期、bug、货不对板:2026 管理系统定制开发落地保障手册
github·bug·鸿蒙系统·数据库管理员
隔窗听雨眠19 小时前
活动中台系统慢SQL治理实践:从监控告警到性能优化的全链路方法论
sql·性能优化·github