From: Jeff King Date: Mon, 09 Feb 2026 06:57:03 GMT Subject: Re: [PATCH 0/3] commit-msg.sample: reject messages that would confuse "git am" Message-ID: <20260209065703.GA585828@coredump.intra.peff.net> In-Reply-To: On Sat, Feb 07, 2026 at 02:57:59PM +0000, Phillip Wood wrote: > From: Phillip Wood > > On 06/02/2026 09:03, Jeff King wrote: > > I don't think there is a way to unambiguously parse the single-stream > > output that format-patch produces. This is a reasonably well-known > > gotcha (at least around here). E.g., some earlier discussions: > > > > 2024:https://lore.kernel.org/git/ca13705ae4817ffba16f97530637411b59c9eb19.camel@scientia.org/ > > 2022:https://lore.kernel.org/git/d0b577825124ac684ab304d3a1395f3d2d0708e8.1662333027.git.matheus.bernardino@usp.br/ > > 2015:https://lore.kernel.org/git/CAFOYHZC6Qd9wkoWPcTJDxAs9u=FGpHQTkjE-guhwkya0DRVA6g@mail.gmail.com/ > > If we cannot improve "git am" perhaps we should update our sample > "commit-msg" hook to reject messages that will cause problems. Here > are some patches to do that. I'm not entirely opposed to it, but my initial reaction was two bits of skepticism: 1. I imagine that hardly anybody runs commit-msg hooks in the first place, let alone our sample hook. So I doubt this will get the attention of many people. 2. I'd guess that these days only a small minority of people care about sending patches by email. So for most people, a warning about their commit message containing a diff or "---" will be mostly useless, if not outright confusing. I'd imagine that documentation updates would be more likely to get read by users than the sample hook. And a warning in git-commit itself would be even more obvious (but fall even more afoul of (2) above). Adding a warning to format-patch would help with (2), but at that point it may be too late to change the commit message. > We could perhaps think about adding a more prominent warning to the > "git am" and "git format-patch" documentation. The docs for "git am" > mention that it splits the message on a line starting with "diff -" > but maybe we should spell out what that means for commit messages that > include a diff. In principle "git format-patch" could also warn or > error out if it creates a mail that "git am" cannot import verbatim, > I don't know how hard that would be in implement. I think the patch from Matheus linked above added that format-patch check. -Peff