在git重新启动/开发过程中,git显示以下错误消息:
fatal: refusing to merge unrelated histories
Error redoing merge 1234deadbeef1234deadbeef
我的Git版本是2.9.0。它在以前的版本中运行良好。
我如何才能继续使用新版本中引入的强制标志来允许不相关的历史?
在git重新启动/开发过程中,git显示以下错误消息:
fatal: refusing to merge unrelated histories
Error redoing merge 1234deadbeef1234deadbeef
我的Git版本是2.9.0。它在以前的版本中运行良好。
我如何才能继续使用新版本中引入的强制标志来允许不相关的历史?
当前回答
git pull-origin main--允许不相关的历史记录
我在github没问题
其他回答
我认为这是一种非常罕见的情况;您已删除远程(例如,原点):
git remote rm origin
然后,过了一段时间,出于某种原因,您尝试将其添加回去,但输入了错误的URL。
git remote add origin git@github.com:example/wrong.git
当然,解决方案是使用正确的URL:
git remote add origin git@github.com:example/correct.git
由于您既不能推,也不能拉和推,也无法合并拉和推:
您可以在GitHub存储库上创建一个新分支。然后:git添加。gitcommit-m'commitName'并在终端的当前目录中引用该分支。git branch-m master branchNamegit push-f原始分支名称您的代码将被推送到新的分支。然后你可以合并这两个分支。
这对我有用。
致命的:拒绝合并不相关的历史也可能是由于肤浅的克隆造成的,因为嫁接提交没有深入到足以看到共同的基础。
对于我的案例,我想将一个不相关的历史分支合并到我的当前分支:
git merge <-unrelated-history-branch-name> --allow-unrelated-histories
我也很挣扎,但我设法找到了解决办法。
当您遇到上面的错误时,只需选择合并提交,然后继续重新启动:
git cherry-pick -m 1 1234deadbeef1234deadbeef
git rebase --continue