在git重新启动/开发过程中,git显示以下错误消息:

fatal: refusing to merge unrelated histories
Error redoing merge 1234deadbeef1234deadbeef

我的Git版本是2.9.0。它在以前的版本中运行良好。

我如何才能继续使用新版本中引入的强制标志来允许不相关的历史?


当前回答

我尝试了git pull——允许不相关的历史记录,但它没有奏效,但这为我解决了问题:

我将桌面存储库中的所有文件复制到另一个文件夹,然后删除该文件夹。然后我再次克隆存储库,因为它是一个新项目。当我再次复制我的文件并将其推送时,它就像魅力一样发挥作用。

其他回答

对我来说,我把所有内容都移动到另一个文件夹,然后我做了git pull然后我将文件移回gitadd,然后gitcommit-m“messag”,然后gitpush

尝试git pull--重新基础开发

在我的案例中,错误是致命的:每次尝试都拒绝合并不相关的历史记录,尤其是远程添加Git存储库后的第一次拉取请求。

使用--allow不相关的历史标记以这种方式处理拉取请求:

git pull origin branchname --allow-unrelated-histories

根据2.9.0发行说明,git pull已被教导将--allow unrelated history选项传递给基础git merge

我遇到了同样的问题:

这是我所做的:

git pull origin main --allow-unrelated-histories

我使用Visual Studio代码解决了合并冲突,然后我做到了:

git commit -m "commit message"

git push origin main

我也犯了同样的错误,这个命令对我有效:

git pull gitlab master --allow-unrelated-histories

请注意,在您的案例中,gitlab可能是origin或heroku。