GitHub Finish-Up-A-Thon 2026
๐
git-regret
A Python CLI that reads your git history and finds the shame โ secrets, WIP commits, fix chains, giant blobs, and messages you wish you'd never written.
// The story
Eight months of shame.
One weekend to fix it.
Before
hackathon night, ~2am
git-audit-tool/
โโโ main.py โ 87 lines of spaghetti
โโโ requirements.txt โ just "gitpython"
โโโ README.md โ "TODO: write this."
Lines of code
87
Pattern types
1
Tests
0
Crashes on repos >10 commits
Yes
After
git-regret v1.0.0
git-regret/
โโโ git_regret/
โ โโโ analyzer.py โ 6 pattern types
โ โโโ cli.py โ typer + flags
โ โโโ ui.py โ rich terminal output
โ โโโ __init__.py
โโโ tests/
โ โโโ test_git_regret.py โ 35 assertions
โโโ pyproject.toml โ pip installable
Lines of code
~500
Pattern types
6
Tests passing
35/35
pip installable
Yes
// What it finds
Six flavours of git regret.
๐
Hardcoded secrets
AWS keys, Stripe tokens, GitHub PATs, database URLs, private keys โ 13 regex patterns scanning every diff line.
HIGH
๐
Giant commits
Commits with 500+ lines or 20+ files changed. A good commit fits in your head.
HIGH / MED
๐
Fix chains
3+ consecutive fix: commits in a row. A root cause that needed four hotfixes was never actually fixed.
HIGH
๐ง
WIP commits
"wip payments", "do not merge", "draft", "tmp" โ work in progress that somehow made it to main.
MEDIUM
๐ฌ
Regret messages
"fix fix fix omg", "oops", "...", "lol bruh", "asdfgh" โ commit messages that tell a story of despair.
MEDIUM
๐ค
Copilot prompt
Run with --copilot and get a ready-to-paste Copilot Chat prompt to plan the remediation.
BONUS
// GitHub Copilot integration
One flag. A full remediation plan.
Run git-regret --copilot and the tool generates a prompt calibrated to your actual findings โ paste it into Copilot Chat and get a step-by-step cleanup plan in 30 seconds.
โก Auto-generated Copilot prompt
You are a senior engineer reviewing my git history.
I ran git-regret and found these issues:
- Patterns detected: secret, giant commit, wip commit, regret message
- Problematic commits: e046b64, 9306da5, 78c7330, 4217b81
Please help me:
1. Write a plan to clean up this git history using interactive rebase
2. Suggest .gitignore and pre-commit hook rules to prevent these issues
3. Draft better commit messages for the problematic commits above
4. Recommend a branching strategy that would have prevented these regrets
// Get started
10 seconds to see your shame.
$pip install git-regret
$git-regret --copilot
Requires Python 3.10+ ยท MIT License ยท Works on any git repo