sublime text 本身不提供 git 提交记录查看功能,必须安装 git history 或 gitsavvy 插件、正确配置 git_binary 路径、且在含 .git 目录的项目根目录下打开文件;gitgutter 仅显示行级差异标记,不支持提交历史或 blame。

Sublime Text 本身不提供 Git 提交记录查看功能,必须装对插件、配好 Git 环境、且在正确路径下打开文件,三者缺一不可;否则右键菜单里压根不会出现 Git History: View File History,命令面板也搜不到。
为什么右键没“View File History”?
这不是插件没装,而是 Sublime 没识别到 Git 上下文:
- 当前窗口必须是通过 File → Open Folder… 打开的、含
.git/目录的项目根目录(不能只双击打开一个src/index.js) - 侧边栏顶部显示的路径里得有
.git,比如/Users/me/project下存在.git/ - 终端里运行
git --version能输出版本号,但 Sublime GUI 启动时不继承 shell 的PATH,需手动指定git_binary路径 - 插件可能被禁用:打开
Preferences → Package Settings → Git History → Settings,确认"enabled": true
该装哪个插件才能看提交列表?
别被 GitGutter 带偏——它只画 +/~/- 标记,不提供任何 commit 列表。真正能查日志的是:
-
Git History:轻量、专注单个文件,右键 →Git History: View File History,点某条可看 diff;适合快速回溯 -
GitSavvy:功能全,按l进入日志视图,支持git log --graph字符化分支图;但需提前运行git config --global log.graph true - 别搜
GitLog——Package Control 中不存在这个插件,所有相关教程都是误传
Git: Blame 怎么定位到具体某一行?
想查“这行代码是谁、什么时候、哪次提交加的”,Git History 不够用,得靠 blame:
- 装
SublimeGit(注意不是GitGutter),命令面板输入Git: Blame,右侧弹出面板显示每行的 author / hash / time - 或绑定快捷键(用户键位设置中添加):
{"keys": ["ctrl+alt+b"], "command": "git_blame"} - 前提:文件已在 Git 仓库中被跟踪(即执行过
git add),否则报错fatal: not a git repository -
GitGutter永远不解析 commit 元数据,它连git log都不调用,别指望它支持 blame
Git: Diff 为啥经常显示为空?
因为默认的 Git: Diff(快捷键 Ctrl+Shift+D)对比的是“当前工作区 vs 暂存区”,不是“vs HEAD”:
- 刚改完文件但没
git add,它显示全部变更;一旦git add了,就变为空——因为暂存区和工作区已一致 - 要看“当前 vs 上次提交”,得用
Git: Diff with HEAD(部分插件版本提供),或手动绑定Git: Diff All - 想对比两个任意 commit?插件不支持;必须切终端执行
git diff <commit1><commit2> -- path/to/file</commit2></commit1>
真正可靠的历史回溯永远建立在 Git 提交基础上;Local History 插件只是本地快照,关掉标签页就停捕、重装系统就消失、不感知命令行修改——它补不了 Git 的缺,只能救急。











