Commit Message Confessions of a Serial Squasher
Lets be honest with each other. We’ve all written terrible commit messages. The difference between me and you is that Im brave enough to admit it while you sit there pretending “fixed stuff” is a valid description of 47 file changes.
Heres a selection from my actual git history. I am not proud. But I also am not going to squash them because the truth deserves to be preserved:
9:41 AM Initial commit (lie, I had been working on this for weeks)
10:02 AM kinda works
10:45 AM definitely works (it did not work)
11:12 AM ok NOW it works (it crashed immediately)
11:13 AM revert "ok NOW it works"
11:14 AM actually maybe this
11:47 AM please
12:01 PM f*** this stupid library
12:30 PM I dont even care anymore
12:31 PM remove console.log that was screaming at me
12:32 PM lgtm
1:00 PM lunch break (this was not a code change but I committed it anyway)
2:15 PM wip
2:16 PM wip 2
2:17 PM wip 3: the wipening
3:00 PM final final v2_useThisOne_REAL (3).js
4:30 PM it compiles ship it
And you know what? Every single one of those commits shipped to production. Because I am a professional.
The Aftermath
At my last job, they made me take a “meaningful commit messages” training. I put the certificate on my wall. I committed the PDF with the message “file”.
The HR person who conducted the training no longer works here. I’m not saying its related. But I’m also not saying it isn’t.
Moral of the story: git commit -m "fixes" and walk away like a king.