GitLens默认不显示行级作者信息,必须手动开启gitlens.blame.lineEnabled、gitlens.decorations.enabled,并确保文件已被Git跟踪;右键“Show Line History”(Alt+H L)可查该行完整修改链。

直接看每行代码是谁写的,用 GitLens 就够了,但默认全关着——不是插件不行,是它装完就“躲起来”,必须手动开三个开关才能让作者名出现在行尾。
gitlens.blame.lineEnabled 必须设为 true
这是让行尾显示作者和时间戳的唯一开关。不勾选它,光标悬停、右键菜单、状态栏提示全都不会出现。它依赖另外两个前提:gitlens.decorations.enabled 得是 true(否则装饰不渲染),且文件必须已被 Git 跟踪(git status 里不能在 Untracked files 列表中)。
- 在 VSCode 设置里搜
gitlens.blame.lineEnabled,勾选 - 顺手检查
gitlens.decorations.enabled是否也为true - 如果只对某项目生效,记得也检查工作区级
.vscode/settings.json有没有覆盖掉全局设置 - 注释行、字符串字面量默认不显示 blame,确认
gitlens.blame.ignoredScopes没误删source或comment
右键 Show Line History 才能查完整修改链
行尾只显示“最后改这行的人”,但真正要定位 bug 或理解逻辑演进,得知道这行被谁、什么时候、为什么动过——GitLens: Show Line History(快捷键 Alt+H L)才是关键入口。
- 光标停在目标行后直接按快捷键,或用命令面板输入该命令
- 结果为空?常见于:该行刚新增未提交、是空行、整行被删后重写(Git 无法关联)、或该次提交中文件是二进制
- 它底层调用的是
git blame -L <line>,<line> -- <file>,遇到异常可直接终端执行等效命令验证 - 大文件(>5000 行)首次加载稍慢,别急着关窗口
为什么鼠标悬停没反应?先看这三件事
不是插件坏了,而是环境没对上。GitLens 的所有信息都来自本地 git 命令输出,它不解析 .git 目录,只调用命令。
- 执行
git status,确认当前文件在modified或Changes to be committed列表里 - VSCode 左下角状态栏是否显示分支名(如
main)?不显示说明没识别到.git目录(可能工作区开错了子目录) - 检查
gitlens.advanced.blame.ignoreWhitespace是否为true(默认值)。如果只改了末尾空格,blame 会跳过这次提交,看起来像“断连” - WSL 或远程开发时,确认
git.path指向真实git可执行文件(如/usr/bin/git)
最容易被忽略的一点:GitLens 不缓存也不猜测,它每次展示的数据都实时来自 git 进程。遇到空白、错乱或延迟,第一反应不该是重装插件,而是切到终端跑一遍对应 git blame 或 git log -L 命令——结果一致,就是仓库状态或 Git 配置的问题;不一致,再查 VSCode 的 git.path 或权限设置。


















