[GH-ISSUE #24] Enhance blame to work with squashed commits #7

Closed
opened 2026-03-02 04:11:13 +03:00 by kerem · 0 comments
Owner

Originally created by @acunniffe on GitHub (Sep 26, 2025).
Original GitHub issue: https://github.com/git-ai-project/git-ai/issues/24

Originally assigned to: @acunniffe on GitHub.

Context

The PR flows in most SCM tools allow you to "Squash and Commit" -- often it's the default behavior. Early versions of git-ai have not been able to maintain authorship logs after server-side squashing or rebasing.

Options

  • Setup server side post-rewrite hooks (very very heavy operational burden to set up for teams).
  • Store reference to base-commit of each authorship log (not just head commit), and reference them when blame runs.
  • SCM Apps that look at merged PR and write authorship log for the squash commit sha

Two would be ideal...just need to think through the algorithm and how we'd handle situations where a PR was made on base commit, and more commits were merged while it was open. In that case you have to somehow rebase authorship logs.

Originally created by @acunniffe on GitHub (Sep 26, 2025). Original GitHub issue: https://github.com/git-ai-project/git-ai/issues/24 Originally assigned to: @acunniffe on GitHub. ## Context The PR flows in most SCM tools allow you to "Squash and Commit" -- often it's the default behavior. Early versions of git-ai have not been able to maintain authorship logs after server-side squashing or rebasing. ## Options - Setup server side post-rewrite hooks (very very heavy operational burden to set up for teams). - Store reference to base-commit of each authorship log (not just head commit), and reference them when `blame` runs. - SCM Apps that look at merged PR and write authorship log for the squash commit sha Two would be ideal...just need to think through the algorithm and how we'd handle situations where a PR was made on base commit, and more commits were merged while it was open. In that case you have to somehow rebase authorship logs.
kerem closed this issue 2026-03-02 04:11:13 +03:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/git-ai#7
No description provided.