If you write commit messages like this, at least have the decency of squashing them when merging. Thanks.
Programmer Humor
Welcome to Programmer Humor!
This is a place where you can post jokes, memes, humor, etc. related to programming!
For sharing awful code theres also Programming Horror.
Rules
- Keep content in english
- No advertisements
- Posts must be related to programming or programmer topics
A PR for every tiny commit. You got it.
At a former workplace I created a leaderboard or most swears in commit messages lol
At the very least, please state which section you made small changes to, even if you are sure it's not worth mentioning what or why.
"Small changes to everything"
98 files changed, 7568 insertions(+), 1022 deletions(-)
"Small changes to a few sections." There. Happy?
thank god now we've AI to do this
🙄
this is literally the only thing I think is acceptable for AI to do for developers.
nobody reads commit history anyway and they always go straight to blame to find out who to kick the fuck out of.
And the blame has those commit messages. That is beside the fact that most authors may not even work there anymore
I don't even waste my time anymore frankly. people just do a git add .
and git commit -m "did some stuff"
.
sorry, I've just worked with a lot of shitbag devs that honestly think of git as a flat filesystem that can't even properly branch or merge.
personally, I still put in clear commits and even do patch level adds. from what I have experienced though, using AI to generate those commit messages based on actual changes would be a godsend compared to the fuckery I've had to deal with.
git commit -m 'a meaningful message'
This is where I thought it was going as well.
“Sometimes the best way to fix a bug is to introduce an unstable new feature that will later have many bug reports. But the code will now work. And was only written after email chain that har management involved.”
“This is a temporary fix only, and the feature flag it’s under should be turned off after pull request 203. Under no circumstances should bug reports 1923 and 2045 use this new feature to fix issues, even if hours of work can be saved using this ”
“I am blameless for any future issues caused by using this new feature. Here be dragons.”
You should put this at the code, or at the flag documentation. The one place you it can't go at all is in a commit message.
Have better docs in those places; but for a class A mess, like above, make sure the approvers see this front and center. Make them sign for it
“this is temporary test code that should be removed before delivery to the customer”
this is real
Nope. That's a temporary solution™.
I once found a commit message in our commit history that just said, "i hate git..." bcz they hadn't changed anything, and I think it took a new line character and decided that they'd actually changed like 5 lines of code twhen they hadn't.
It was the funniest shit, someone who was a senior lead for like 9 years that had left, and 5 years later I find that...
git commit -m "A spirit trapped within a tree, no mouth to scream or eyes to see. A cage of bark, a prison of wood. A thing of rage where nature stood."
git commit -m "$(fortune | cowsay)"
Love it.
While folks are thinking about git commit messages I will offer this.
My only criticism of the essay is that the most important bit is listed at number 7.
git commit -m "here is everything in this commit $(tar -czv . | base64)"
Go for broke
git commit -m "It works on my machine $(tar -ca . -C / | base64)"
Always put a ticket number in the commit message. That can make it much easier later to find out what the context was for some weird solution.
git commit -m "Boss makes a dollar, I make a dime so I comment meaningful on company time"
For complex changes go with "self-explanatory" just to fuck with peoples' confidence
I've worked with a few people who are just incomprehensible. One refuses to write commit messages of any detail. Just "work in progress". Cast him into the pit.
There was another guy that refused to name his tests. His code was like
describe(''. () => {
it('', () => {
expect(someFunc()).toEqual(0);
}
it('', () => {
expect(someFunc(1)).toEqual(0);
}
it('', () => {
expect(someFunc("").toEqual(1);
}
}
He was like, "Test names are like comments and they turn into lies! So I'm not going to do it."
I was like, a. what the fuck. b. do you also not name your files? projects? children?
He was working at a very big company last I heard.
edit: If you're unfamiliar, the convention is to put a human readable description where those empty strings are. This is used in the test output. If one fails, it'll typically tell include the name in the output.