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
相关推荐
天若有情6738 小时前
【C++原创开源】formort.h:一行头文件,实现比JS模板字符串更爽的链式拼接+响应式变量
开发语言·javascript·c++·git·github·开源项目·模版字符串
海盗12349 小时前
在群晖NAS上使用Git Server
git
y小花9 小时前
git常用指令
git
华科大胡子9 小时前
开源项目 Git 贡献全流程拆解
git
极地星光9 小时前
工程中:Git 子模块(submodule) vs 直接依赖(源码/库/包管理器)
git
果汁华9 小时前
GitHub Trending 热门仓库整理 (2026年4月10日)
github
无限进步_10 小时前
【C++&string】大数相乘算法详解:从字符串加法到乘法实现
java·开发语言·c++·git·算法·github·visual studio
粥里有勺糖10 小时前
视野修炼-技术周刊第129期 | 上一次古法编程是什么时候
前端·javascript·github
无限进步_11 小时前
【C++】验证回文字符串:高效算法详解与优化
java·开发语言·c++·git·算法·github·visual studio
Gavin_ZYX11 小时前
Skill 管理过于繁琐,不如写个自动同步的工具
人工智能·架构·github