refactor: switch git blame to incremental output mode

Also, move blame parser and related structures to a new module VcsBlame.

This includes a full parser re-write to take advantage of the slightly
more efficient incremental output format.
This commit is contained in:
CJ van den Berg 2026-01-26 21:38:15 +01:00
parent cb73153fd0
commit 7d1809ba57
6 changed files with 167 additions and 84 deletions

View file

@ -390,7 +390,7 @@ pub fn blame(context_: usize, file_path: []const u8) !void {
try arg.writer.print("{s}", .{file_path});
try git(context_, .{
"blame",
"--line-porcelain",
"--incremental",
"HEAD",
"--",
arg.written(),