【问题标题】:GIT Fatal : refusing to merge unrelated historiesGIT Fatal:拒绝合并不相关的历史
【发布时间】:2017-02-23 12:01:53
【问题描述】:
$ git pull origin master
From https://bitbucket.org/tecgenome/chl-v2.0-html
 * branch            master     -> FETCH_HEAD
fatal: refusing to merge unrelated histories

如何避免或克服该错误消息?

【问题讨论】:

    标签: git bitbucket


    【解决方案1】:

    Since Git 2.9 (April 2016),你可以试试:

    git pull --allow-unrelated-histories origin master
    

    但请检查为什么这些分支不再常见。
    可能有一个强制推送重写了 所有origin/master 的历史。

    在这种情况下,如果您没有自己的本地提交,最好将您的分支重置为新的:

    警告:这将删除所有未跟踪的文件,并将您的存储库重置为 origin/master
    (您可以在当前本地克隆的副本中尝试)

    git fetch
    
    # Warning: RESET AHEAD
    git reset --hard origin/master
    

    【讨论】:

    • 不能解决问题。不确定pull 首先与合并问题有什么关系,而您提供的第二个解决方案仍然不能解决合并问题。
    • @geoidesic 您是否为您的情况找到了解决方案?
    • 我使用了 Knight2016 的解决方案。
    • 不怪回答的人只是分享我的经验,我尝试了这个解决方案,它删除了我几乎所有的本地工作,幸好没有造成伤害,但是对于那些不知道的人将删除不在远程 git repo 中的本地工作
    • @LiamO'Toole 我很抱歉读到这个。我已经编辑了答案,以更好地突出“重置”效果及其危险。
    【解决方案2】:

    我确实遇到了同样的问题,并尝试它可以工作的命令。

    git merge abbranch --allow-unrelated-histories

    这里我们假设abbranch 与当前分支无关。以上命令将abbranch 合并到当前分支。

    【讨论】:

      【解决方案3】:

      如果您在 android studio 中遇到 push Recjected 或此问题 您只需打开您的项目启用版本控制集成

      并从 android 移动到项目。 右键单击包 --> 转到 Git --> 添加

      现在点击 终端 和 按照下面给出的步骤

       git remote add origin <repository url>
      
          git clone <repository url>
          git pull origin master --allow-unrelated-histories
          git merge origin origin/master
          ... add and commit here...
          git push origin master
      

      【讨论】:

        猜你喜欢
        • 2017-12-29
        • 2016-10-22
        • 2017-01-09
        • 2017-09-02
        • 2020-08-28
        • 2018-11-06
        • 2018-10-11
        • 2020-10-03
        • 2019-12-17
        相关资源
        最近更新 更多