From: Phillip Wood Date: Sat, 07 Feb 2026 14:57:59 GMT Subject: [PATCH 0/3] commit-msg.sample: reject messages that would confuse "git am" Message-ID: In-Reply-To: <20260206090358.GA2761602@coredump.intra.peff.net> 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. 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. Base-Commit: b2826b52eb7caff9f4ed6e85ec45e338bf02ad09 Published-As: https://github.com/phillipwood/git/releases/tag/pw%2Fsample-commit-msg-reject-diff%2Fv1 View-Changes-At: https://github.com/phillipwood/git/compare/b2826b52e...83c100a73 Fetch-It-Via: git fetch https://github.com/phillipwood/git pw/sample-commit-msg-reject-diff/v1 Phillip Wood (3): templates: add .gitattributes entry for sample hooks templates: detect commit messages containing diffs templates: detect messages that contain a separator line .editorconfig | 2 +- .gitattributes | 1 + templates/hooks/commit-msg.sample | 38 +++++++++++++++++++++++++++++-- 3 files changed, 38 insertions(+), 3 deletions(-) -- 2.52.0.362.g884e03848a9