Sublime Text需借助插件实现Git Diff:GitGutter提供边栏标记与快捷diff,Sublime Merge支持图形化两栏对比;二者均比较工作区与HEAD版本,而非上次保存。

Sublime Text 本身不内置 Git Diff 功能,但可以通过插件实现“将当前文件与上次保存的版本(即 Git 暂存区或最新 commit)进行比较”。关键在于:你真正想比的是 工作区修改 vs Git 仓库中该文件的 HEAD 版本(也就是“上次提交”),而不是“上次保存”——因为 Sublime 的“保存”动作不会自动记录快照,Git 才是版本依据。
安装 Git 插件(推荐 GitGutter 或 Sublime Merge)
GitGutter 是轻量、专注的选项,它会在编辑器边栏显示新增、修改、删除的行,并支持快捷键触发 diff:
- 通过 Package Control 安装 GitGutter
- 确保系统已安装 Git 且在 PATH 中(终端输入 git --version 可验证)
- 打开一个受 Git 管理的项目文件夹(即包含 .git 目录)
- 修改文件后,边栏会实时显示变化标记;按 Ctrl+Shift+P(Win/Linux)或 Cmd+Shift+P(Mac)→ 输入 “GitGutter: Diff”,即可在新标签页中查看当前文件与 HEAD 的差异
用 Sublime Merge 集成(更直观的图形化 diff)
Sublime Merge 是官方推出的 Git GUI 工具,与 Sublime Text 深度联动:
- 安装 Sublime Merge 后,在 Sublime Text 中右键文件 → “Git: Open in Sublime Merge”
- 它会直接打开该文件的两栏对比视图:左为 HEAD 版本,右为当前未暂存修改
- 支持逐行 stage、撤销、复制变更等操作,比纯文本 diff 更适合精细审查
注意:“上次保存” ≠ “上次 Git 提交”
Sublime 的“保存”只是写入磁盘,不产生版本记录。如果你没提交过,HEAD 就是初始 commit;如果中间有未提交修改,diff 对比的仍是 HEAD,不是你上一次 Ctrl+S 的内容。真要回溯本地保存历史,需借助系统级文件历史(如 macOS Time Machine、Windows File History)或第三方备份工具,Sublime 不提供该能力。
基本上就这些。用 GitGutter 快速看改了啥,用 Sublime Merge 做深度对比和操作——两者都依赖 Git 仓库状态,不是文件自动快照。










