From: Kristoffer Haugsbakk Date: Tue, 29 Sep 2026 13:31:38 GMT Subject: Re: [PATCH] branch: let --delete-merged find squash merged branches Message-ID: <4c4fba69-e474-4ee3-8e34-73e76d42d3d5@app.fastmail.com> In-Reply-To: On Tue, Sep 29, 2026, at 13:18, D. Ben Knoble wrote: > On Tue, Sep 29, 2026 at 4:17 AM Kristoffer Haugsbakk > wrote: >> >> On Tue, Sep 29, 2026, at 09:52, Harald Nordgren wrote: >> > [snip] >> > >> > Maybe I should include both examples in my text. >> >> My *guess* is that `git merge --squash` inspired the forge squashes. >> But the forges popularized it. >> >> The apparent `git merge --squash` approach of using `git log` for >> concatenating the commit messages isn’t that nice in my opinion. So I >> wonder how much it is used. > > The same behavior is present in GitHub's default squash merge message, > and almost no one I work with bothers to edit it. The asterisk bullet points on GitHub are better than `git merge --squash`: Squashed commit of the following: [just `git log` of the commits in the range] > It's really sad to lose the opportunity to have good commit messages > when using squash-and-merge on a forge---not because we *cannot*, but > because the defaults do not *encourage* it (and we all know how > defaults affect user behavior!). In my opinion squash merges cannot be implemented in a good way, in a way that leads to good commits. Fundamentally not. It’s the button to both squash “oops” and the incremental, valuable commits, resulting in a blob where even a manually written commit message cannot document all the changes properly. And the reasons why are laid out in your article, I think... > > Anyway, see https://benknoble.github.io/blog/2024/08/02/github-squash/ > for a distillation of my thoughts from working around folks that > squash carelessly. > > So, anecdotally: it is used widely due to defaults. Blech. Which is excellent. Thanks for writing it.