码迷,mamicode.com
首页 > 其他好文 > 详细

【问题解决方案】git无法pull仓库refusing to merge unrelated histories

时间:2020-04-09 12:28:16      阅读:51      评论:0      收藏:0      [点我收藏+]

标签:origin   内容   链接   csdn   方案   需要   输出   分析   index   

参考链接

问题描述

  • 预将本地已有仓库与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

【问题解决方案】git无法pull仓库refusing to merge unrelated histories

标签:origin   内容   链接   csdn   方案   需要   输出   分析   index   

原文地址:https://www.cnblogs.com/anliux/p/12665839.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!