【问题解决方案】git无法pull仓库refusing to merge unrelated histories
参考链接
问题描述
- 预将本地已有仓库与github新建仓库关联,并上传本地仓库。
- 首先经过
init
+git remote add ..
等一系列关联步骤 - 如果在GitHub建库时选了协议,就需要先pull,此时在没有
git push -u ..
的情况下,可能报错如题
问题分析
如果合并了两个不同的开始提交的仓库,在新的
git
会发现这两个仓库可能不是同一个,为了防止开发者上传错误,于是就给下面的提示fatal: refusing to merge unrelated histories
如在Github新建一个仓库,写了License,然后把本地一个写了很久仓库上传。这时会发现 github 的仓库和本地的没有一个共同的
commit
所以 git 不让提交,认为是写错了origin
,如果开发者确定是这个origin
就可以使用--allow-unrelated-histories
告诉 git 自己确定遇到无法提交的问题,一般先pull 也就是使用
git pull origin master
- 这里的 origin 就是仓库
- master 就是需要上传的分支
- 因为两个仓库不同,发现 git 输出
refusing to merge unrelated histories
无法 pull 内容
因为他们是两个不同的项目,要把两个不同的项目合并,git需要添加一句代码,在
git pull
之后,这句代码是在git 2.9.2版本发生的,最新的版本需要添加--allow-unrelated-histories
告诉 git 允许不相关历史合并
问题解决
假如源是origin,分支是master,那么这样写:
git pull origin master --allow-unrelated-histories
如果有设置了默认上传分支就可以用下面代码
git pull --allow-unrelated-histories
END
相关推荐
formula 2020-11-12
huhongfei 2020-11-05
乾坤一碼農 2020-10-27
liumengyanysu 2020-10-22
E哥的aws认证攻略 2020-10-15
guying 2020-10-05
好脑筋不如烂笔头 2020-09-17
baolen 2020-08-15
Equation 2020-08-09
Balmunc 2020-08-02
fenggou 2020-07-18
zhangxing 2020-07-05
loganwz 2020-07-05
LynnOhYeah 2020-07-18
87447007 2020-07-19