在我的本地,我做了一个新的文本文件→ git add newfile.txt → commit → pull origin master → ERROR!“拒绝合并不相关的历史”什么是不相关的历史?相关历史有哪些?
aoyhnmkz1#
我认为你已经在远程仓库中提交了,当你拉取时,这个错误发生了。使用以下命令:
git pull origin master --allow-unrelated-histories git merge origin origin/master
qij5mzcb2#
我遇到了一个类似的问题,我从第二个远程引入了一个分支,并希望与第一个远程的分支合并。这与现有的答案不同,因为我没有在pull上使用-allow-independent-histories,而是在merge上使用。
git checkout master git merge --allow-unrelated-histories myfunnybrancy
vhmi4jdf3#
当本地的.git子目录丢失时,整个项目似乎不知从哪里出现,因为所有的本地更改历史都包含在.git中。因此,您的本地更改将变得不相关。这就是为什么所有的变化都被称为“不相关的历史”。在这种情况下,git merge or pull请求将无法跟踪您在远程项目中进行的更改。因此," refusing to merge unrelated histories"-错误发生。在这种情况下,如果您尝试通过以下命令强制合并,git pull origin master --allow-unrelated-historiesgit merge origin origin/master它会产生很多冲突,因为它无法找到您本地更改的历史。
.git
git merge or pull
" refusing to merge unrelated histories"
git pull origin master --allow-unrelated-histories
git merge origin origin/master
x6h2sr284#
kulphzqa5#
我在重命名GitHub Enterprise中的一个存储库时遇到了这个问题,然后按照下面的步骤制作相同的前命名存储库。1.在远程创建存储库sample1.克隆到本地1.将remote重命名为old-sample1.在远程中创建名为sample的新存储库1.尝试从本地推送1.发生错误。奇怪的是,我删除了本地仓库,但git试图克隆旧的仓库,即使我尝试通过新创建的仓库URL进行克隆。克隆URL只是自动重定向到旧的,即使新的存在于远程。我不知道这是由于服务器还是本地Git进程。由于这个原因,错误的发生是因为Git进程无法将其本地提交历史与远程历史进行比较。
sample
old-sample
不相关的历史可以告诉在上述情况下。
我最终删除并重命名了远程的旧存储库,问题得到了解决。
aydmsdu96#
只是:
git pull --allow-unrelated-histories
6条答案
按热度按时间aoyhnmkz1#
我认为你已经在远程仓库中提交了,当你拉取时,这个错误发生了。
使用以下命令:
qij5mzcb2#
我遇到了一个类似的问题,我从第二个远程引入了一个分支,并希望与第一个远程的分支合并。这与现有的答案不同,因为我没有在pull上使用-allow-independent-histories,而是在merge上使用。
vhmi4jdf3#
当本地的
.git
子目录丢失时,整个项目似乎不知从哪里出现,因为所有的本地更改历史都包含在.git
中。因此,您的本地更改将变得不相关。这就是为什么所有的变化都被称为“不相关的历史”。在这种情况下,
git merge or pull
请求将无法跟踪您在远程项目中进行的更改。因此," refusing to merge unrelated histories"
-错误发生。在这种情况下,如果您尝试通过以下命令强制合并,
git pull origin master --allow-unrelated-histories
git merge origin origin/master
它会产生很多冲突,因为它无法找到您本地更改的历史。
x6h2sr284#
kulphzqa5#
我在重命名GitHub Enterprise中的一个存储库时遇到了这个问题,然后按照下面的步骤制作相同的前命名存储库。
1.在远程创建存储库
sample
1.克隆到本地
1.将remote重命名为
old-sample
1.在远程中创建名为
sample
的新存储库1.尝试从本地推送
1.发生错误。
奇怪的是,我删除了本地仓库,但git试图克隆旧的仓库,即使我尝试通过新创建的仓库URL进行克隆。克隆URL只是自动重定向到旧的,即使新的存在于远程。我不知道这是由于服务器还是本地Git进程。
由于这个原因,错误的发生是因为Git进程无法将其本地提交历史与远程历史进行比较。
不相关的历史可以告诉在上述情况下。
我最终删除并重命名了远程的旧存储库,问题得到了解决。
aydmsdu96#
只是: