VSCode中解决Git合并冲突需手动介入,可通过内置合并编辑器、命令面板预设策略、GitLens插件增强或直接编辑冲突标记四种方式处理,最后均需保存并执行git add暂存。

如果您在使用 VSCode 进行 Git 合并操作时遇到代码冲突,编辑器会以可视化方式标记冲突区域,但需手动介入选择保留内容或编辑合并结果。以下是解决此问题的步骤:
本文运行环境:MacBook Air,macOS Sequoia。
一、使用内置合并编辑器处理冲突
VSCode 提供图形化三路合并视图,左侧为当前分支(CURRENT),右侧为传入分支(INCOMING),中间为可编辑的合并结果,便于直观比对和决策。
1、在源代码管理视图中,点击显示冲突的文件旁的“接受合并”按钮(或右键选择“打开合并编辑器”)。
2、在中间编辑区,逐段查看冲突块,点击“接受当前更改”、“接受传入更改”或“接受两者”按钮完成单个冲突块的处理。
3、确认所有冲突块均已处理后,点击右上角的“保存”图标(或按 Cmd+S)。
4、在终端中执行 git add 将已解决的文件暂存。
二、通过命令面板快速应用预设策略
VSCode 支持一键应用全局冲突解决策略,适用于整份文件中所有冲突块保持统一取舍逻辑的场景,避免逐块点击。
1、按下 Cmd+Shift+P 打开命令面板。
2、输入并选择“Git: Accept Current Change”命令,整份文件中所有 CURRENT 部分将被保留,INCOMING 部分被丢弃。
3、或选择“Git: Accept Incoming Change”,整份文件中所有 INCOMING 部分将被保留,CURRENT 部分被丢弃。
4、执行完毕后,仍需手动保存文件并运行 git add 暂存变更。
三、启用插件增强冲突识别与导航
原生合并编辑器不支持跨冲突块快速跳转或语义级高亮,安装专用插件可提升处理效率与准确性。
1、在扩展市场中搜索并安装 “GitLens” 插件。
2、重启 VSCode 后,在冲突文件中右键任意冲突块,选择 “GitLens: Resolve Conflict” 子菜单项。
3、使用快捷键 Cmd+Alt+J 在不同冲突块之间快速跳转。
4、启用 GitLens 的 “Conflict Resolution Decorations” 设置,使 CURRENT/INCOMING 区域以不同背景色区分,无需展开冲突标记即可识别归属分支。
四、手动编辑冲突标记区域
当合并编辑器不可用(如非 UTF-8 编码文件或插件禁用时),可直接在文本编辑器中识别并修改 Git 冲突标记语法结构。
1、定位形如 >>>>> branch-name 之间的区块。
2、删除整段冲突标记行(包括 ======= 分隔线),仅保留所需内容。
3、确保修改后的代码语法正确,无遗漏分号、括号或引号。
4、保存文件后,在终端中运行 git add 确认该文件冲突已解决。










