vscode 的 git Blame 功能支持悬停查看单行修改信息、顶部面板全局浏览、右键快速跳转及智能忽略格式化提交。默认开启,需确保文件受 Git 跟踪;可配置 ignoreRevsFile 和 followRenames 提升准确性。

VSCode 的 Git Blame 功能能让你在不离开编辑器的情况下,一眼看出某一行代码是谁、什么时候改的——不用切到终端、不用查 commit 记录,鼠标悬停就出结果。
打开 Git Blame 面板看全局修改信息
按 Ctrl+Shift+P(windows/linux)或 Cmd+Shift+P(mac)调出命令面板,输入 Git: Toggle Blame 并回车,就能在编辑器顶部显示一行 blame 信息栏。它会按行标出作者名、提交哈希、相对时间(如 “2 days ago”)和简短的 commit 消息。点击任意一条 blame 条目,会自动跳转到对应 commit 的详情页(在 Source Control 视图中)。
悬停查看单行责任人(最常用)
把鼠标停在代码某一行左侧的行号区域(或直接悬停在代码上),几秒后就会弹出一个 tooltip,显示这行最近一次修改的:作者、邮箱、提交时间、commit ID 和提交标题。这个功能默认开启,无需额外配置。如果没反应,检查是否已初始化 Git 仓库、当前文件是否被 Git 跟踪。
右键快速跳转到历史版本或作者提交
在代码行上右键,会出现几个实用选项:
- Blame Line:仅对该行执行 blame(适合选中多行时精准定位)
- Open File at Revision:打开该行所属 commit 时的整个文件快照(可对比上下文)
- View Commit in Timeline:在 Git Timeline 视图中高亮并定位到这次提交
- Search Commits by Author:一键筛选该作者的所有提交(适合追查某人负责的模块)
让 Blame 更准:处理代码重排和大范围改动
默认情况下,Git Blame 可能因格式调整、空行增删而“误判”修改人。可以在 VSCode 设置里开启更智能的 blame:
- 搜索设置项 git.blame.ignoreRevsFile,启用后配合项目根目录下的 .git-blame-ignore-revs 文件,可排除格式化提交(如 Prettier 自动修复)
- 设置 git.advanced.followRenames 为 true,让 blame 能跨文件重命名追踪(比如从
utils.js重构成helpers.ts)
基本上就这些。用熟了,读别人代码、接手老项目、排查问题时,三秒内锁定关键修改人,效率提升很明显。