Git – 错误:拒绝合并不相关的历史

您的 Git 工具有时可能会拒绝合并分支,并出现错误:“致命:拒绝合并不相关的历史记录”。我们正在展示如何克服这个问题。

1 问题

有时在使用 GitHub 期间,您会遇到在本地和远程双方都创建初始分支的情况。自然,您想合并分支,但您的 Git 工具可能会拒绝合并它们,因为分支具有“不相关的历史”。我将展示我在使用 GitHub 和 SourceTree 时出现的问题,但在其他工具和远程存储库中可能会发生。

我遇到的问题,刚刚发生,但我确信我和其他人会再次发生,是我在工作期间完成了两个初始分支:main 和 master。“主”分支默认由 GitHub 创建,那里有一个自述文件。SourceTree默认创建分支“master”,我的代码就在其中。

好的,这里不需要有两个分支,我们把它们合并,去掉一个。让我们保留 GitHub 默认分支“main”并删除“master”。

但是当您尝试合并这两个分支时会出现问题:

它给出了一个错误:“致命:拒绝合并不相关的历史

2 解决方案

由于我们的两个分支没有共同的祖先提交,SurceTree 认为我们做错了什么。但我们知道我们是对的,并想强迫它。

2.1。强制合并

我看了看,它在 [1] 中说您无法从 SourceTree GUI 解决这个问题。所以,我们需要 GitBash 来运行命令行 Git 命令。问题说明和说明在 [2] 中。
我们需要运行“ git merge <branch-name>  --allow-unrelated-histories

因此,您可以从 SourceTree(终端按钮)打开 GitBash,然后执行命令。系统将提示您在单独的文本编辑器中输入提交评论。然后合并将继续。

这是合并分支现在的样子:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值