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
相关推荐
满天星830357710 小时前
【Git】原理及使用(七) (多人协作 [下])
git
DogDaoDao16 小时前
ShellGPT:当大语言模型遇见命令行——深度解析一个 CLI AI 生产力工具的设计与实现
人工智能·语言模型·自然语言处理·github·大语言模型·shellgpt·终端命令行
郡杰17 小时前
Git基础与开发平台搭建
git·后端
uhakadotcom19 小时前
Python 中,`None` 不等于 `False`导致的问题
后端·面试·github
钟智强19 小时前
我警告了 329 天
git·php·wordpress·webshell
乐观的冷风20 小时前
我们需要将文件添加到暂存区才能提交,而移除文件后是无法添加到暂存区的,那么怎么移除一个文件让GIT不再将其纳入版本控制呢?上图中GIT已经给出了说明:
git
小弥儿21 小时前
GitHub今日热榜 | 2026-07-05:阿里巴巴浏览器Agent上榜
学习·开源·github
tjl521314_211 天前
Git SSH Host Key Verification Failed 问题排查与解决
运维·git·ssh
uhakadotcom1 天前
什么是 “无界限的列表积累” 问题
后端·面试·github
嘶哈哈哈1 天前
[特殊字符] Git 协作指南
git