{"thread":{"id":"64405","subject":"Cease and desist for companies and government agencies misusing git","startedAt":"2025-10-30T15:27:24Z","lastAt":"2025-10-30T19:50:57Z","messageCount":3,"participants":["Mark Bauermeister","Nico Williams","Junio C Hamano"],"isPatch":false,"patchVersion":null,"patchTotal":null},"messages":[{"id":"529972","messageId":"CADanQgA3h52hax-mdSTBV-tNDGvNRSxLU217aVygj7Cs7Lu8Bg@mail.gmail.com","threadId":"64405","inReplyTo":null,"subject":"Cease and desist for companies and government agencies misusing git","fromName":"Mark Bauermeister","fromEmail":"warfan2007@gmail.com","sentAt":"2025-10-30T15:27:10Z","receivedAt":"2025-10-30T15:27:24Z","isPatch":false,"sender":{"key":"warfan2007@gmail.com","avatar":null},"body":"Ok, this post (as well as the title. As much as I wish we could\nprohibit such institutions from using our products) is partially\ntongue in cheek, partially me venting and partially asking the\ncommunity for ideas on how to properly educate the vast masses of\n\"professional\" developers still unaware of the soul crushing damage\ntheir workflows (that barely work and definitely don't flow) cause to\nothers.\n\nEarlier this year I got hired by a Swiss government agency. My late\nmother was incredibly happy and proud of me at the time and knowing\nthat I just got bullied out of that job and finding myself once again\nin the unemployment line is weighing heavily on me.\n\nLong story short. The guy who was responsible for my firing spent a\ngood 4 months journaling my work and harassing management behind my\nback only to blow up while on the phone with me, accusing me of such\nheinous crimes as sending a PR from a fork (at a time I didn't have\nwrite access to the main repository...) and *gasp* REBASING.\n\nThis dude is convinced (to a religious fervor) that Linus Torvalds was\npossessed by a demon when he came up with `git rebase` and that in\norder to defeat the devil, we need to plaster merge commits\nEVERYWHERE.\n\nHis workflow is thusly:\n\n- Create new feature branch based on the master or release branch (this is fine)\n- Make changes\n- Create PR (all PRs end in a merge commit, btw. This is fine but\nmakes his git behavior look even more unhinged)\n- Check for changes on master/release and create a merge commit on his\nbranch (there's no logic behind this. He isn't creating a \"logical\ncheckpoint\", he just generally runs merge every time)\n- If the PR doesn't get approved for a while, he'll keep creating more\nmerge commits\n- Rinse and repeat this for every single feature branch under his\ncontrol. Merging merges into his merge (insert Pimp my Ride meme)\n- Once the release PRs have been completed, merge (with a merge\ncommit, naturally...) the release branch into master.\n\nToday I've counted 8 merge commits on changes that amount to about 20 LOC.\n\nI don't wanna live in this world anymore. Beam me up, Scotty!\n\n/end of rant\n\nIs it time for an online campaign ala \"Merge commits considered harmful\"?\n\nI have nothing against a merge commit being the result of a successful\nPR but people spamming merge commits are ... something else.\n"},{"id":"529973","messageId":"aQOGlBhrvtmpbfDJ@ubby","threadId":"64405","inReplyTo":"CADanQgA3h52hax-mdSTBV-tNDGvNRSxLU217aVygj7Cs7Lu8Bg@mail.gmail.com","subject":"Re: Cease and desist for companies and government agencies misusing git","fromName":"Nico Williams","fromEmail":"nico@cryptonector.com","sentAt":"2025-10-30T15:39:00Z","receivedAt":"2025-10-30T15:39:10Z","isPatch":false,"sender":{"key":"nico@cryptonector.com","avatar":null},"body":"On Thu, Oct 30, 2025 at 04:27:10PM +0100, Mark Bauermeister wrote:\n> Long story short. The guy who was responsible for my firing spent a\n> good 4 months journaling my work and harassing management behind my\n> back only to blow up while on the phone with me, accusing me of such\n> heinous crimes as sending a PR from a fork (at a time I didn't have\n> write access to the main repository...) and *gasp* REBASING.\n> \n> This dude is convinced (to a religious fervor) that Linus Torvalds was\n> possessed by a demon when he came up with `git rebase` and that in\n> order to defeat the devil, we need to plaster merge commits\n> EVERYWHERE.\n\nThat's nuts!\n\nBy the way, Linus did not invent rebasing.  We used rebasing at Sun\nMicrosystems, Inc, (RIP) since 1992.  We didn't call it that, but merge\ncommits were absolutely verboten (they were called \"merge turds\").\n\nThe Solaris engineering organization had thousands of developers, and\noften tens of large projects with their own \"gates\" (forks), and\neveryone rebasing all the time, and the end result was linear, easy to\nunderstand history.\n\nRebase workflows are the only workflows that scale to such project\nsizes as Solaris used to be, or as Windows, Linux, etc. are now.\n\nNico\n-- \n"},{"id":"529984","messageId":"xmqq1pmk5fts.fsf@gitster.g","threadId":"64405","inReplyTo":"CADanQgA3h52hax-mdSTBV-tNDGvNRSxLU217aVygj7Cs7Lu8Bg@mail.gmail.com","subject":"Re: Cease and desist for companies and government agencies misusing git","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2025-10-30T19:50:55Z","receivedAt":"2025-10-30T19:50:57Z","isPatch":false,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Mark Bauermeister <warfan2007@gmail.com> writes:\n\n> Is it time for an online campaign ala \"Merge commits considered harmful\"?\n>\n> I have nothing against a merge commit being the result of a successful\n> PR but people spamming merge commits are ... something else.\n\nThere do exist people who make pointless back-merges into their\ntopic from the trunk, just like there are those who pointlessly\nrebase their topic every time they notice that the trunk got\nupdated.  Both are bad, even though constant rebasing would hide the\nfact they were rebased and what was integrated at the end was less\nwell tested than what was originally written, so in a sense it may\nbe worse.\n\nThese people need to learn that they can make trial merges every\nonce in a while so that their topic can be used with more recent tip\nof trunk than where they forked from, and that they do not have to\nkeep these trial merges in the history.\n"}]}