From: Phillip Wood <phillip.wood123@gmail.com>
To: Jeff King <peff@peff.net>, Phillip Wood <phillip.wood@dunelm.org.uk>
Cc: git@vger.kernel.org, Matthias Beyer <mail@beyermatthias.de>,
Jacob Keller <jacob.keller@gmail.com>,
pyokagan@gmail.com
Subject: Re: [PATCH 0/3] commit-msg.sample: reject messages that would confuse "git am"
Date: Mon, 9 Feb 2026 10:43:23 +0000 [thread overview]
Message-ID: <f5f100de-815e-4bf3-832f-3d473413c635@gmail.com> (raw)
In-Reply-To: <20260209065703.GA585828@coredump.intra.peff.net>
On 09/02/2026 06:57, Jeff King wrote:
> On Sat, Feb 07, 2026 at 02:57:59PM +0000, Phillip Wood wrote:
>
>> From: Phillip Wood <phillip.wood@dunelm.org.uk>
>>
>> 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.
I think that's fair, but having it in the sample hook doesn't do any harm.
> 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.
People do download patches from github and apply them even if they're
not using a email based workflow. I'm not entirely clear but I think
that's what happened in the post Matthias linked to. Though if they're
using "patch" rather than "git am" to apply them indenting the diff wont
help.
> 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.
Kristoffer has kindly updated the documentation. I'm wary of adding a
warning to "git commit" for the reason you gave above. We could make it
opt-in but then hardly anyone would probably set that config option.
Thanks
Phillip
>> 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
>
next prev parent reply other threads:[~2026-02-09 10:43 UTC|newest]
Thread overview: 65+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-02-06 7:43 git-am applies commit message diffs Matthias Beyer
2026-02-06 8:04 ` Jacob Keller
2026-02-06 8:18 ` Matthias Beyer
2026-02-06 9:03 ` Jeff King
2026-02-07 14:57 ` [PATCH 0/3] commit-msg.sample: reject messages that would confuse "git am" Phillip Wood
2026-02-07 14:58 ` [PATCH 1/3] templates: add .gitattributes entry for sample hooks Phillip Wood
2026-02-07 14:58 ` [PATCH 2/3] templates: detect commit messages containing diffs Phillip Wood
2026-02-07 14:58 ` [PATCH 3/3] templates: detect messages that contain a separator line Phillip Wood
2026-02-07 21:27 ` Junio C Hamano
2026-02-07 21:38 ` Kristoffer Haugsbakk
2026-02-09 0:17 ` Junio C Hamano
2026-02-09 7:00 ` Jeff King
2026-02-09 10:42 ` Phillip Wood
2026-02-10 6:44 ` Jeff King
2026-02-09 6:57 ` [PATCH 0/3] commit-msg.sample: reject messages that would confuse "git am" Jeff King
2026-02-09 10:43 ` Phillip Wood [this message]
2026-02-09 11:07 ` Matthias Beyer
2026-02-10 6:46 ` Jeff King
2026-02-09 15:58 ` git-am applies commit message diffs Patrick Steinhardt
2026-02-10 2:16 ` Jacob Keller
2026-02-10 14:22 ` Patrick Steinhardt
2026-02-10 15:47 ` Junio C Hamano
2026-02-11 2:31 ` Jacob Keller
2026-02-11 2:34 ` Jacob Keller
2026-02-11 7:47 ` Jeff King
2026-02-11 15:23 ` Kristoffer Haugsbakk
2026-02-11 15:47 ` Junio C Hamano
2026-02-10 6:56 ` Jeff King
2026-02-13 14:34 ` [PATCH v2 0/2] commit-msg.sample: reject messages that would confuse "git am" Phillip Wood
2026-02-13 14:34 ` [PATCH v2 1/2] templates: add .gitattributes entry for sample hooks Phillip Wood
2026-02-13 14:34 ` [PATCH v2 2/2] templates: detect commit messages containing diffs Phillip Wood
2026-02-13 16:42 ` Kristoffer Haugsbakk
2026-02-13 18:08 ` Junio C Hamano
2026-02-14 14:46 ` Phillip Wood
2026-02-13 17:59 ` Junio C Hamano
2026-02-14 14:36 ` Phillip Wood
2026-02-14 15:42 ` Junio C Hamano
2026-02-13 17:41 ` [PATCH v2 0/2] commit-msg.sample: reject messages that would confuse "git am" Junio C Hamano
2026-02-06 8:59 ` git-am applies commit message diffs Florian Weimer
2026-02-06 9:24 ` Jeff King
2026-02-06 9:48 ` Florian Weimer
2026-02-06 10:08 ` Jeff King
2026-02-06 8:43 ` Kristoffer Haugsbakk
2026-02-06 17:45 ` Jakob Haufe
2026-02-07 10:08 ` Kristoffer Haugsbakk
2026-02-07 21:44 ` Kristoffer Haugsbakk
2026-02-08 0:11 ` [PATCH] doc: add caveat about roundtripping format-patch kristofferhaugsbakk
2026-02-08 1:39 ` Junio C Hamano
2026-02-08 17:18 ` Kristoffer Haugsbakk
2026-02-09 16:42 ` Phillip Wood
2026-02-09 17:59 ` Kristoffer Haugsbakk
2026-02-10 10:57 ` Phillip Wood
2026-02-10 16:00 ` Kristoffer Haugsbakk
2026-02-09 22:37 ` [PATCH v2] " kristofferhaugsbakk
2026-02-09 22:59 ` Junio C Hamano
2026-02-09 23:11 ` Kristoffer Haugsbakk
2026-02-10 11:02 ` Phillip Wood
2026-02-10 18:20 ` Kristoffer Haugsbakk
2026-02-12 22:28 ` [PATCH v3] doc: add caveat about round-tripping format-patch kristofferhaugsbakk
2026-02-12 23:19 ` Junio C Hamano
2026-02-13 14:41 ` Phillip Wood
2026-02-13 14:43 ` Kristoffer Haugsbakk
2026-02-13 18:02 ` Junio C Hamano
2026-02-10 0:53 ` [PATCH] doc: add caveat about roundtripping format-patch Christoph Anton Mitterer
2026-02-10 16:00 ` Kristoffer Haugsbakk
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=f5f100de-815e-4bf3-832f-3d473413c635@gmail.com \
--to=phillip.wood123@gmail.com \
--cc=git@vger.kernel.org \
--cc=jacob.keller@gmail.com \
--cc=mail@beyermatthias.de \
--cc=peff@peff.net \
--cc=phillip.wood@dunelm.org.uk \
--cc=pyokagan@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox