默认不显示作者信息是因为gitlens.blame.lineEnabled和gitlens.showCurrentLineBlame默认为false,需手动开启;文件须被Git跟踪、项目根目录含.git、且gitlens.decorations.enabled为true才能正常显示行尾作者与时间。

默认不显示任何作者信息,不是插件坏了,是关键开关没开。 GitLens 安装完就“隐身”,是因为 gitlens.blame.lineEnabled 和 gitlens.showCurrentLineBlame 这两个设置默认都是 false。不手动打开,它不会在行尾、侧边栏或状态栏显示任何人名或 commit hash。
为什么鼠标悬停/点击没反应
常见原因就三个,按优先级排列:
- 文件没被 Git 跟踪:执行
git status,如果文件在untracked files里,GitLens 直接不干活 - 项目根目录没有
.git文件夹:VS Code 左下角不显示分支名(比如只写 “No source control providers active”),说明根本不在 Git 仓库里 - 启用了空格忽略:
gitlens.advanced.blame.ignoreWhitespace默认为true,你改了一行末尾空格,blame 会跳过这次提交,直接指向上一次“非空格修改”——看起来像作者信息“断连”了
怎么让每行末尾显示作者和时间
这是最直观的行级 blame 方式,靠的是内联装饰(inline decorations):
- 打开 VS Code 设置(
Ctrl+,),搜索gitlens.blame.lineEnabled,勾选启用 - 顺手检查
gitlens.decorations.enabled也得是true,否则装饰不渲染 - 如果只想看作者名、不想看日期,可以设
gitlens.defaultDateFormat为null - 注意:注释、字符串字面量里的行默认不显示 blame,检查
gitlens.blame.ignoredScopes是否误删了source或comment
右键“Show Line History”到底查什么
状态栏只告诉你“最后谁动了这行”,但实际可能有三个人都碰过:
- A 写了原始逻辑
- B 改了变量名(只改了标识符,Git 认为是同一行变更)
- C 调整了缩进或末尾空格(若
ignoreWhitespace关闭,也会出现在历史里)
所以必须右键该行 → GitLens: Show Line History(快捷键 Alt+H L),它会列出所有 touch 过这行的 commit,按时间倒序,每个条目带 author、date、message,还能点进去看 diff。大文件(>5000 行)响应稍慢,别急着关窗口。
最容易被忽略的一点:GitLens 的所有 blame 和历史数据,完全来自本地 git 命令的真实输出。遇到诡异空白或报错,先在终端跑一遍等效命令,比如 git blame -L 42,42 path/to/file.go,比对着看——不是插件问题,就是 Git 配置或仓库状态的问题。


















