执行git rebase origin/development
命令时,Git 显示以下错误信息:
fatal: refusing to merge unrelated histories
Error redoing merge 1234deadbeef1234deadbeef
我的Git版本是2.9.0。在以前的版本中它可以正常使用。
如何在新版本中使用强制标志,继续进行允许无关历史的变基操作?
--allow-unrelated-histories
? - jmarceligit pull
。出现了“罕见事件,合并了两个独立启动的项目的历史记录”。git --work-tree="." pull --allow-unrelated-histories
- Petru Zaharia在我的情况下,每次尝试合并代码时都会出现错误提示:fatal: refusing to merge unrelated histories
,特别是在远程添加Git仓库后第一次提交拉取请求时。
使用--allow-unrelated-histories
标志可以通过以下方式的拉取请求解决该问题:
git pull origin branchname --allow-unrelated-histories
根据2.9.0版本的发行说明 - git pull
已经学会向底层的git merge
传递--allow-unrelated-histories
选项。
git clone
开始。 - Umbrella尝试以下命令:
git pull origin master --allow-unrelated-histories
这应该能解决你的问题。
tl:dr
因为它解决了“太长不看”。 - okandas在我第一次建立本地代码仓库时,遇到了这个错误。之后我转到GitHub创建了一个新的代码仓库。然后我运行了下面的命令:
git remote add origin <repository url>
每次我尝试推送或拉取时,都会收到相同的fatal: unrelated_histories
错误。
以下是我如何解决它的方法:
git pull origin master --allow-unrelated-histories
git merge origin origin/master
... add and commit here...
git push origin master
.git
文件夹,运行了git init
并执行了Adithya所说的操作,除了合并部分。 - codepleb在执行git pull origin master
时遇到错误后:
fatal: refusing to merge unrelated histories
# It could be master
git pull origin master --allow-unrelated-histories
# Or main
git pull origin main --allow-unrelated-histories
# Or just try with origin
git pull origin main --allow-unrelated-histories
git push
请记住,此错误可能发生在两个不同分支之间执行的其他操作中。 例如,当尝试合并两个没有相关历史记录的分支时,这是没有意义的。
无论如何,只需添加--allow-unrelated-histories
就可以解决问题。
git merge some_branch --allow-unrelated-histories
当两个不相关的项目合并时(即,这些项目彼此不知道对方的存在,并且提交历史不匹配),会出现“fatal: refusing to merge unrelated histories” Git错误。
get-merge命令(来自Git文档):--allow-unrelated-histories
--allow-unrelated-histories
默认情况下,git merge命令拒绝合并没有共同祖先的历史记录。当合并两个独立启动的项目的历史记录时,可以使用此选项来覆盖此安全性。由于这种情况非常罕见,因此不存在用于默认启用此选项的配置变量,并且不会添加。
为此,请输入以下命令:
git pull origin branchname --allow-unrelated-histories
例如,git pull origin master --allow-unrelated-histories
参考资料:
git merge origin/main localBranchName --allow-unrelated-histories
对我有用。 - Kasir Barati我有同样的问题。尝试这个:
git pull origin master --allow-unrelated-histories
git push origin master
对于Android Studio和IntelliJ:
首先,提交所有更改并解决任何冲突。
然后,在IDE下方打开终端并输入:
git pull origin master --allow-unrelated-histories
现在你可以推动了。
尝试运行 git pull --rebase development
git pull --rebase=preserve --allow-unrelated-histories development
。”它建议使用此命令来拉取代码并保留原有分支历史,即使与当前分支没有关联的历史。 - Riccardo MurrinewOrigin branch
(而不是development
)运行此命令后,初始提交被添加到了本地分支的顶部,有效地将几乎所有东西都删除了。我希望来自新远程仓库的初始提交位于本地分支底部。 - redOctober13
git-rebase
的情况,而回答却给出了针对git-merge
的标志。 - Shubham Chaudharygit pull [repo URL]
而不是git clone [repo URL]
后得到了这个错误。 - rsoren