
I think we've all been there.
git blame reveals a familiar name. Your own. The commit message says "fix". The date says eight months ago. The code says something that, in retrospect, you cannot fully explain.
Until today, your only options were to quietly fix it and hope nobody noticed, or write a long Slack message that begins with "so, funny story.."
Git 2.53.4 introduces a new command: git sorry.
What It Does
git sorryThat's it. Git does the rest.
git sorry analyzes your blame history, identifies commits where you were clearly the problem, and sends a brief, professional apology email to everyone who has touched those lines since.
The email looks like this:
Subject: Regarding commit a3f92b1
Hi,
I've been made aware that you had to work around something I wrote on March 3rd. I understand. I'm sorry. I thought it made sense at the time.
Best,
Henning
Flags
--deep
Extends the apology to indirect victims. If someone refactored your code, and then someone else had to fix the refactor, they also receive an email.
--specific <commit>
You know the one.
--not-my-fault
Attaches the original Jira/DevOps ticket to prove you were asked to do it that way.
--preemptive
Sends apologies for code you haven't written yet, based on your recent branch names.--auto
Command git sorry runs automatically after git push if commit message is shorter than 5 characters.
Blame Score
Git now tracks a blame score across your commit history — a running total of how many times other developers have had to work around your code.
bash
$ git blame-score
Henning: 847No context is provided. Just the number.
FAQ
What if I have a high blame score but genuinely wasn't at fault?
Use git sorry --not-my-fault. Git will cross-reference the Jira/DevOps ticket. If the ticket contains the phrase "quick fix", the apology is sent anyway and with high priority.
Can I undo a git sorry?
No. Some things cannot be undone.
Availability
git sorry is available now. Run git update to get it.
If git update doesn't exist on your system, Git suggests you reflect on that.