You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

VSCode编辑器中Git合并冲突时文件不显示差异对比内容求助

Git合并冲突时VSCode不显示incoming changes问题说明

复现步骤

  • 在master分支新建test.txt文件
  • 创建并切换到名为test的分支,在test.txt中添加文本「test branch」后提交
  • 切回master分支,在test.txt中添加文本「master branch」后提交
  • 切回test分支执行git merge master命令,终端正常提示存在合并冲突

异常现象

VSCode打开冲突的test.txt文件时,仅能看到文件存在冲突的系统标注,没有显示incoming changes、current changes等标准差异对比内容,无法直接通过VSCode内置功能解决冲突。该问题仅在当前特定项目中出现,其他项目合并操作均正常。

可能原因及解决方案

原因1:项目.gitattributes配置了自定义合并规则

当前项目根目录下的.gitattributes文件如果对冲突文件类型配置了特殊合并规则,例如*.txt -merge、*.txt merge=binary,会导致Git合并时不插入<<<<<<< HEAD、=======、>>>>>>> master这类标准冲突标记,VSCode无法识别差异内容自然不会展示合并选项。
解决方案:删除.gitattributes中对应文件的特殊合并规则,重新执行合并命令即可。

原因2:Git合并冲突样式配置非默认值

如果Git的全局或项目本地配置修改了merge.conflictStyle参数,部分老版本VSCode无法识别非默认的冲突格式,会导致差异区块加载失败。
解决方案:执行命令git config --local merge.conflictStyle merge将当前项目的冲突样式重置为默认值,重新触发合并即可。

原因3:VSCode未正确识别当前项目为Git仓库

如果打开VSCode时选择的路径不是项目根目录(即不包含.git文件夹的上层路径),VSCode的Git拓展无法读取仓库信息,也就不会加载合并冲突相关的对比功能。
解决方案:重新在VSCode中打开项目根目录,确认左侧「源代码管理」面板可以正常展示冲突文件列表即可。

内容的提问来源于stack exchange,提问作者Coding-pupupu

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.30 00:18:01