this post was submitted on 16 Jul 2025
710 points (99.3% liked)

Programmer Humor

25080 readers
904 users here now

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

founded 2 years ago
MODERATORS
 
all 34 comments
sorted by: hot top controversial new old
[–] eager_eagle@lemmy.world 46 points 2 days ago (1 children)

If you write commit messages like this, at least have the decency of squashing them when merging. Thanks.

[–] callouscomic@lemmy.zip 14 points 2 days ago

A PR for every tiny commit. You got it.

[–] wise_pancake@lemmy.ca 22 points 2 days ago

At a former workplace I created a leaderboard or most swears in commit messages lol

[–] Redkey@programming.dev 18 points 2 days ago* (last edited 1 day ago) (2 children)

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.

[–] InnerScientist@lemmy.world 8 points 1 day ago* (last edited 1 day ago)

"Small changes to everything"
98 files changed, 7568 insertions(+), 1022 deletions(-)

[–] runeko@programming.dev 6 points 1 day ago

"Small changes to a few sections." There. Happy?

[–] cannonship@lemmy.world 16 points 2 days ago (3 children)

thank god now we've AI to do this

[–] GreenKnight23@lemmy.world -3 points 2 days ago (1 children)

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.

[–] sukhmel@programming.dev 1 points 1 day ago (1 children)

And the blame has those commit messages. That is beside the fact that most authors may not even work there anymore

[–] GreenKnight23@lemmy.world 3 points 1 day ago

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.

[–] eager_eagle@lemmy.world 15 points 2 days ago (1 children)

git commit -m 'a meaningful message'

[–] Matt@lemdro.id 4 points 2 days ago

This is where I thought it was going as well.

[–] limer@lemmy.dbzer0.com 13 points 2 days ago (3 children)

“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.”

[–] marcos@lemmy.world 5 points 2 days ago (1 children)

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.

[–] limer@lemmy.dbzer0.com 4 points 2 days ago

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

[–] baines@lemmy.cafe 2 points 1 day ago

“this is temporary test code that should be removed before delivery to the customer”

this is real

[–] MonkderVierte@lemmy.zip 1 points 1 day ago

Nope. That's a temporary solution™.

[–] NocturnalMorning@lemmy.world 9 points 2 days ago

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...

[–] MonkderVierte@lemmy.zip 8 points 1 day ago (1 children)

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."

[–] Ferk@programming.dev 5 points 1 day ago

git commit -m "$(fortune | cowsay)"

[–] PastelKeystone@lemmy.world 7 points 2 days ago

Love it.

While folks are thinking about git commit messages I will offer this.

https://cbea.ms/git-commit/

My only criticism of the essay is that the most important bit is listed at number 7.

[–] rumba@lemmy.zip 7 points 2 days ago (1 children)

git commit -m "here is everything in this commit $(tar -czv . | base64)"

[–] InnerScientist@lemmy.world 2 points 1 day ago

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.

[–] hakunawazo@lemmy.world 4 points 1 day ago

git commit -m "Boss makes a dollar, I make a dime so I comment meaningful on company time"

[–] MTK@lemmy.world 2 points 1 day ago* (last edited 1 day ago)

For complex changes go with "self-explanatory" just to fuck with peoples' confidence

[–] jjjalljs@ttrpg.network 2 points 1 day ago* (last edited 1 day ago)

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.