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

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

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

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


当前回答

由于您既不能推,也不能拉和推,也无法合并拉和推:

您可以在GitHub存储库上创建一个新分支。然后:git添加。gitcommit-m'commitName'并在终端的当前目录中引用该分支。git branch-m master branchNamegit push-f原始分支名称您的代码将被推送到新的分支。然后你可以合并这两个分支。

这对我有用。

其他回答

警告:这可能会覆盖远程存储库

这对我有用:

git push origin master --force

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

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

git pull origin branchname --allow-unrelated-histories

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

我也有同样的问题。试试看:

git pull origin master --allow-unrelated-histories 

git push origin master

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

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

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