Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
EGit将文件标记为存在冲突,但合并工具编辑器不显示红色标记_Git_Egit_Merge Conflict Resolution - Fatal编程技术网

EGit将文件标记为存在冲突,但合并工具编辑器不显示红色标记

EGit将文件标记为存在冲突,但合并工具编辑器不显示红色标记,git,egit,merge-conflict-resolution,Git,Egit,Merge Conflict Resolution,当我将master向下合并到dev分支中时,EGit显示冲突的文件。因此,我转到Git Staging视图,在该视图中,冲突文件显示在“unstagechanges”下,名称上带有红色冲突标记。对于每个文件,我右键单击它,选择“合并工具”,冲突编辑器显示在左侧,主代码显示在右侧,我手动解决冲突并将文件添加到索引中,因此它从“未分级更改”区域移动到“分级更改”。这一切都很好 但是,当我打开合并工具时,虽然编辑器实际上以蓝色显示非冲突的更改,以红色显示冲突的更改,但在许多情况下,根本没有红色更改,只

当我将master向下合并到dev分支中时,EGit显示冲突的文件。因此,我转到Git Staging视图,在该视图中,冲突文件显示在“unstagechanges”下,名称上带有红色冲突标记。对于每个文件,我右键单击它,选择“合并工具”,冲突编辑器显示在左侧,主代码显示在右侧,我手动解决冲突并将文件添加到索引中,因此它从“未分级更改”区域移动到“分级更改”。这一切都很好

但是,当我打开合并工具时,虽然编辑器实际上以蓝色显示非冲突的更改,以红色显示冲突的更改,但在许多情况下,根本没有红色更改,只有蓝色更改,就好像没有任何冲突的更改一样,我要解决冲突所做的一切(?)就是单击“从右向左复制所有不冲突的更改”

那么,为什么文件一开始就显示为冲突?一定有什么事情我错过了很多时间。这就是我试图理解的


补充:虽然我担心的主要原因是我不明白为什么冲突文件中没有红色标记的更改,所以我不确定发生了什么,所以在提交回master时可能会出错,但对我来说,这个问题的另一个要点是,所有标记为冲突但没有显示冲突更改的文件通过简单地复制无冲突的更改(即所有更改)来处理从右到左,这对我来说相当于使我的文件与合并到我的文件相同,而这又相当于简单地用另一个文件覆盖我的文件,这是我认为我不应该一个文件一个文件地手动执行的操作当我的文件处于该状态(即冲突但未标记冲突更改)时,使用ace my files.

仅仅因为您在视觉上看不到文件两个版本中的任何差异并不意味着它们没有任何更改。例如,可能在空格/行尾方面存在差异。@TimBiegeleisen我确实看到了差异。编辑器实际上以蓝色显示了不冲突的更改,以红色显示了冲突的更改,但是在许多情况下,根本没有红色更改,只有蓝色更改。无论更改是如何产生的,如果文件显示为冲突,我希望能够手动解决冲突,但如果合并工具没有显示冲突的位置,我就无法解决冲突。空白的差异确实会在实际存在时显示出来(如果我选择“忽略空白”,我可以将它们隐藏起来。)你是在问为什么会发生这种情况或如何处理这种情况吗?@TimBiegeleisen我在问为什么。一旦我了解了发生的事情,我希望能够决定如何处理它。我建议使用空白和行尾作为可能的解释。