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 默认不允许合并没有共同祖先的分支,以此避免意外合并两个不同项
怎么做
git fetch origin
git checkout main
git merge master
# 可能提示错误:fatal: refusing to merge unrelated historiesgit merge master --allow-unrelated-histories
然后你再正常提交
那这次你终于解决了,以后怎么办呢?
如果是本地已经有的项目,使用 master 分支名
# 重命名本地分支
git branch -M main# 推送新分支到远程仓库
git push -u origin main# 删除远程旧分支
git push origin --delete master
如果以后新项目想所有初始化项目都弄成 main 呢
git config --global init.defaultBranch main