From https://gitee.com/guotaoyu/casting-sword * branch master -> FETCH_HEAD fatal: refusing to merge unrelated histories
时间: 2024-09-26 13:16:43 浏览: 41
RayCasting-tutorial.rar_RayCasting tutorial_ray casting_ray cast
这个错误信息表示你在尝试从`https://gitee.com/guotaoyu/casting-sword`拉取`master`分支时,发现本地仓库的`master`分支和你要合并的远程分支不是来自同一个祖先提交。换句话说,你们的历史记录不是线性的,它们是“unrelated histories”,这是Git的一个安全机制,防止意外地混合不相关的代码更改。
当你试图通过`git fetch`命令合并两个这样的分支时,Git会拒绝操作,因为它担心这样做可能会破坏现有代码库的完整性。
解决此问题,你需要确认以下两点:
1. 确保你知道你正在做什么,如果只是想把远程分支拉下来作为新的分支,可以创建一个新的名称,而不是直接覆盖现有的`master`。
2. 如果你想合并,确保本地分支和远程分支来自同一个开发线程,通常情况下,你应该在一个干净的工作区,并且只从远程主分支拉取新功能或修复。
正确的做法可能是先清理本地分支,删除所有远程分支未包含的本地提交,然后再尝试从远程拉取最新的`master`:
```
git checkout master
git reset --hard origin/master
git fetch https://gitee.com/guotaoyu/casting-sword
git pull https://gitee.com/guotaoyu/casting-sword master
```
阅读全文