本文讲的是把git在最新2.9.2,合并pull两个不同的项目,出现的问题 如何去解决 fatal: refusing to merge unrelated histories 合并两个不同历史的仓库

一开始是我在 Github 新建一个仓库,写了 License ,然后把本地一个写了很久仓库上传。

因为已经创建了和本地不同的,不是一个空仓库,在上传之前先pull,因为两个仓库不同,发现refusing to merge unrelated histories,无法 pull 所以上传失败,谷歌了很久才发现为何这样。

原来在 2.9.2 之后,不可以合并不同没有相同结点的分支,如果需要合并两个不同结点的分支,那么需要在git pull 添加一句代码--allow-unrelated-histories。于是修改之后的代码,假如源是origin,分支是master,那么请看下面代码。

git pull origin master --allow-unrelated-histories

这个功能是可以让大家不要把仓库上传错了,如果会加上这个代码,那么就是自己确定了上传。之前很容易就把代码传错了,现在可以看到,如果上传的仓库不是之前在上传的仓库,是一个新的仓库,那么就会提示需要添加上面代码才能上传


本文会经常更新,请阅读原文: https://dotnet-campus.github.io//post/git%E6%97%A0%E6%B3%95pull%E4%BB%93%E5%BA%93refusing-to-merge-unrelated-histories.html ,以避免陈旧错误知识的误导,同时有更好的阅读体验。

知识共享许可协议 本作品采用 知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议 进行许可。欢迎转载、使用、重新发布,但务必保留文章署名 lindexi (包含链接: https://dotnet-campus.github.io/ ),不得用于商业目的,基于本文修改后的作品务必以相同的许可发布。如有任何疑问,请 与我联系