Re: [PATCH] commit: More generous accepting of RFC-2822 footer lines.
- From
Shawn O. Pearce <spearce@spearce.org>
- Date
- Oct 28, 2009, 00:05 UTC
- Message-ID
- <20091028000511.GK10505@spearce.org>
- In-Reply-To
- <20091027234520.GA11433@quaoar.codeaurora.org>
David Brown <davidb@codeaurora.org> wrote:
Show 12 quoted lines
> From: David Brown <davidb@quicinc.com> > > 'git commit -s' will insert a blank line before the Signed-off-by > line at the end of the message, unless this last line is a > Signed-off-by line itself. Common use has other trailing lines > at the ends of commit text, in the style of RFC2822 headers. > > Be more generous in considering lines to be part of this footer. > This may occasionally leave out the blank line for cases where > the commit text happens to start with a word ending in a colon, > but this results in less fixups than the extra blank lines with > Acked-by, or other custom footers.
The nasty perl I use in Gerrit's commit-msg hook is a bit more expressive. Basically the rule is we insert a blank line before the new footer unless all lines in the last paragraph (so all text after the last "\n\n" sequence) match the regex "^[a-zA-Z0-9-]+:".
Show 8 quoted lines
> +test_expect_success 'signoff gap' ' > + > + echo 3 >positive && > + git add positive && > + alt="Alt-RFC-822-Header: Value" && > + git commit -s -m "welcome > + > +$alt" &&
I wonder if we shouldn't also have a test case for the message:
msg="test
this is a test that fixes: 42. "
as the result would be expected to be:
exp="test
this is a test that fixes: 42.
Signed-off-by A. U. Thor <...> "
But:
msg="test
this is a test
fixes: 42 "
would produce:
exp="test
this is a test
fixes: 42 Signed-off-by A. U. Thor <...> "
-- Shawn.