VSCode内置Git扩展自动识别并高亮Git冲突,提供三栏合并编辑器供选择或手动解决;解决后需手动Stage文件,否则仍视为未解决。
Git冲突发生时,VSCode会自动识别并高亮显示
当你执行
、
或
后出现冲突,VSCode 会在文件编辑器顶部显示「CONFLICT」提示条,并在冲突代码块中用不同背景色区分
(当前分支)和
(传入变更)。这不是插件功能,是 VSCode 内置 Git 扩展的默认行为,无需额外安装。
用内置合并编辑器快速选择或编辑冲突内容
点击冲突文件旁的「Accept Current Change」、「Accept Incoming Change」或「Accept Both Changes」按钮,是最直接的解决方式。但更常见的是需要手动调整——此时点击「Open Changes」或直接在冲突块中点击「Compare changes」链接,就会打开三栏合并视图:
左侧:
(你本地的版本)
中间:
(你正在编辑的最终结果)
右侧:
(对方/上游的版本)
你可以逐块点击「Accept Current」、「Accept Incoming」或「Accept Both」按钮,也可以直接在中间栏手动删改、补全逻辑。注意:中间栏修改后必须保存(
/
),否则
时仍会报冲突未解决。
解决后必须显式标记为已解决
VSCode 不会自动执行
,即使你在合并编辑器里点完了所有「Accept」按钮。遗漏这步会导致
依然显示
,且无法提交:
在资源管理器中右键冲突文件 → 选择「Stage Changes」
或在源代码管理视图(
)中,找到该文件左侧的「+」图标并点击
命令面板(
)输入「Git: Stage File」也可触发
只有文件从「Changes」区域移入「Staged Changes」区域,才算真正解决完成。
VSCode 1.118
微软正式发布 Visual Studio Code 1.118 版本 。本次更新重点强化了 AI 开发体验与企业管理能力,其中最引人注目的是新增 Copilot CLI 远程控制功能,允许开发者通过手机或网页远程监控和接管 AI 会话 。同时,为了提高 AI 的运行性价比,新版本优化了令牌缓存策略以降低成本 。此外,1.118 版还引入了 Chronicle 本地历史追踪、TypeScript 7.0 支持以及更严格的企业级访问管控 。
下载
遇到「The merge editor is not available」错误怎么办
这个提示通常出现在以下情况:
你正编辑的文件**不是通过 Git 命令触发冲突的**(比如手动复制粘贴了另一份代码,但没走
流程)
VSCode 没有正确识别工作区为 Git 仓库(检查左下角是否有分支名,或运行
确认是否在 repo 根目录)
文件被外部程序独占锁定(如 Excel 正在编辑 .csv,或杀毒软件扫描中)
临时绕过方法:关闭合并编辑器,直接在文本编辑器里删掉
、
、
这些标记行,保留想要的代码,再手动
—— 本质和合并编辑器做的是一回事,只是少了一层可视化辅助。
最易被忽略的一点:合并编辑器里的「Accept Both Changes」不是简单拼接,它会按行合并,如果两边都改了同一行,依然会留冲突标记。这时候必须手动介入,不能依赖一键按钮。
git pullgit mergegit rebaseHEADincomingCurrentMerge ResultIncomingCtrl+SCmd+Sgit addgit addgit statusUnmerged pathsCtrl+Shift+GCtrl+Shift+Pgit mergegit status<<<<< HEAD=======>>>>> commit-hashgit add