Skip to content

Inline blame causes git process thrashing with auto-save and loses accuracy in dirty documents #5098

@eamodio

Description

@eamodio

Summary

Inline blame spawns a fresh git process on every auto-save, causing thrashing when auto-save delay is short. Blame annotations also lose accuracy in dirty documents — displaying incorrect hover diffs when line positions shift.

Impact

Users editing files with inline blame enabled experience:

  • Git process thrashing when auto-save fires frequently (each save invalidates the blame cache and triggers a full git blame)
  • Incorrect hover information (wrong originalLine/previousSha) when edits shift line positions

Validation

  1. Enable inline blame and set auto-save to a short delay (e.g., 1s)
  2. Edit a file and let auto-save fire repeatedly — blame should remain accurate without triggering git processes on each save
  3. Edit lines back to their committed content — blame should restore the original commit attribution, not show "Uncommitted changes"
  4. Hover over blame in a dirty document — hover should show the correct diff and details for the attributed commit

Metadata

Metadata

Assignees

Labels

area-annotationsIssues or features related to annotations (blame, heatmap, changes, etc)area-hoversIssues or features related to Hoversverified ✔Verified
No fields configured for Enhancement.

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions