EGit "synchronize workspace" 不会将合并冲突标记为已解决

EGit "synchronize workspace" won't mark merge conflict as resolved

到目前为止,我只是简单地使用 fetch+merge 方法进行合并,如果存在合并冲突,我会手动修复它,暂存并提交。它解决得很好。

现在我决定试试 "synchronize workspace" 东西。我检查了我的本地分支和 运行 在远程源分支上的命令。如何将单个文件拉入我的存储库?

我试过使用merge或者pull,但是没有整合变化,它突然告诉我有合并冲突。这种冲突本来不应该发生,但是再次建立索引和提交并不能修复错误。我与工作区同步,它一直在两个相同的文件上显示两侧的红色错误...

尝试取而代之的是 fetch + rebase:你将不得不再次解决冲突,但是一旦完成,你修改后的提交应该在 origin/master 之上:下一个 fetch 应该什么都不做,因为一切已提取。

this tutorial:

根据我的经验,Synchronize Workspace 让大多数人感到困惑。

一般应该使用"read-only"。不要试图在这里解决任何冲突。默认情况下,您将工作副本与远程存储库进行比较。这意味着您实际上在您的工作副本中没有冲突。当你在这里 "fix" 它们时,你只是在进行局部修改。您可以提交它,但它不能解决任何冲突。它使实际冲突更难解决。

我建议不要在 Team Synchronization 视角下做任何事情。只需执行 pull(或 fetch/merge)将这些冲突添加到您的工作副本中,然后解决它们。你知道该怎么做。如果出现问题并且您想要重新尝试,请对本地存储库中的最后一次提交执行 reset --hard 并重新开始。