sublime text 原生不支持文件对比(diff)功能,所有对比能力均依赖插件;推荐使用官方 sublimemerge 插件实现双栏对比、语法高亮与行内差异标记,或轻量级 quick compare 插件快速比对小文件。

Sublime Text 里没有内置 Diff 工具
Sublime Text 原生不提供文件对比(Diff)功能,点右键、菜单、命令面板都找不到 diff 或 compare files。这不是你没找对位置,是它真没做——官方把这事交给了插件生态。
用 SublimeMerge 插件最稳
Sublime 官方出的 SublimeMerge 不仅是独立 Git GUI,还提供了 Sublime Text 插件版,能直接在编辑器里调起双栏对比视图,支持语法高亮、行内差异标记、跳转变更块。
- 安装:打开命令面板(
Ctrl+Shift+P/Cmd+Shift+P),输Package Control: Install Package→ 搜Sublime Merge(注意不是SublimeMerge,大小写和空格要对) - 对比操作:选中两个标签页 → 右键 →
Compare Files;或选中一个文件后按Ctrl+Alt+D(Windows/Linux)/Cmd+Alt+D(macOS),再点另一个文件 - 容易踩的坑:
SublimeMerge插件依赖本地安装的sublime_mergeCLI 工具;如果只装了插件但没装 Sublime Merge 应用本身,会报错sublime_merge command not found—— 去官网下载安装完整版,勾选「Add to PATH」选项
临时对比用 Quick Compare 插件更轻量
如果不想装 Sublime Merge,Quick Compare 是个纯 Python 实现的轻量替代:不依赖外部程序,开箱即用,适合快速看两段文本或小文件的差异。
- 安装同上,在 Package Control 里搜
Quick Compare - 使用:选中第一个文件 → 右键 →
Quick Compare: Set First File;再打开第二个文件 → 右键 →Quick Compare: Compare with First File - 注意点:不支持 Git 集成、不能跳转变更行、大文件(>10MB)可能卡顿;对比结果是只读新标签页,不能编辑
- 参数差异:它默认忽略空白符变化,如需开启,进
Preferences → Package Settings → Quick Compare → Settings,把"ignore_whitespace": true改成false
别用 FileDiffs 插件碰 Git 场景
老教程常推的 FileDiffs 插件虽能比对,但在现代 Sublime 版本(尤其是 4.x)下兼容性差,尤其和 Git 插件共存时容易触发 UnicodeDecodeError 或命令面板无响应。它的 diff 引擎是自己写的简易版,不识别 UTF-8 BOM、不处理换行符混用(CRLF/LF)、也不支持行号对齐。
- 如果你正在看 Git 状态面板里的未暂存文件,想对比工作区和暂存区 —— 直接用
SublimeMerge插件,它原生支持git diff --no-index和git diff HEAD语义 - 如果已经装了
FileDiffs且出现AttributeError: 'NoneType' object has no attribute 'splitlines',大概率是某次对比中途关闭了其中一个文件标签,删掉插件更省事











