所以我有一个开发分支和主题分支。我在Window的VS Code中使用了默认终端。在主题分支中,我做了git merge develop
因为我刚刚获得了开发分支的最新信息。现在,在一个文件中存在简单的合并冲突。在VS Code中,我解决了冲突。在代码页上,您可以Accept Incoming
或Accept Current
不再发生冲突,但当我尝试在左侧的“源代码管理”面板上暂存文件时,会显示警告弹出窗口说Are you sure you want to stage with merge conflicts?
这是正常的吗?似乎VS Code并不认为我解决了冲突,即使我刚刚做了,并且文件中没有冲突。或者有什么我错过了Git / VS代码?
答案 0 :(得分:1)
这是正常现象。通常,当我们在合并的源文件和目标文件的同一行中进行更改时,就会遇到合并冲突。
在您的情况下,您已解决文件中的冲突(我的意思是对代码),但未更新为git。因此,添加 Accept Incoming
或 Accept Current
后,您必须执行以下步骤,
<conflicts resolved files>
merge conflict resolved message
” 答案 1 :(得分:0)
在VSCode中,当您在多个文件中有冲突时,它们会显示在git面板中,您可以一个一个地打开文件并解决它们。
解决文件中的冲突时,应保存文件,然后单击该文件的+
按钮(如下图所示)。
这将导致暂存文件。如果单击此按钮,但该文件中有未解决的冲突,则会显示以下消息:
确定要合并冲突吗?
现在,如果您解决了所有文件的冲突,然后单击所有文件上方的+
按钮(以暂存所有有冲突的文件)(如下图所示),它仍然会为您提供相同的消息(尽管您已经解决了所有冲突)。
因此,我建议您单独单击每个文件的+
,以确保在暂存文件之前已解决所有冲突。
我相信此错误已在VSCode的最新版本中修复。
答案 2 :(得分:0)
就我而言,我意识到我已关闭 自动保存 。我知道,这太傻了。但值得检查。