Subject: Re: [PATCH RFC] log-tree: let format-patch not indent notes

From: Junio C Hamano <[email-masked]>
Date: Thu, 25 Sep 2014 10:24:53 -0700

Uwe Kleine-König  <[email-masked]> writes:

> Commit logs as shown by git-log are usually indented by four spaces so
> here it makes sense to do the same for commit notes.
>
> However when using format-patch to create a patch for submission via
> e-mail the commit log isn't indented and also the "Notes:" header isn't
> really useful. So consequently don't indent and skip the header in this
> case. This also removes the empty line between the end-of-commit marker
> and the start of the notes.
>
> Signed-off-by: Uwe Kleine-König <[email-masked]>
> ---
> This commit changes the output of format-patch (applied on this commit) from:
>
> 	...
> 	case.
>
> 	Signed-off-by: Uwe Kleine-König <[email-masked]>
> 	---
>
> 	Notes:
> 	    This commit changes the output of format-patch (applied on this commit) from:
>
> to
>
> 	...
> 	case.
>
> 	Signed-off-by: Uwe Kleine-König <[email-masked]>
> 	---
> 	This commit changes the output of format-patch (applied on this commit) from:
>
> which I consider to be more useful.

I suspect that is fairly subjective, as the current one is in that
form because those who wrote this feature first, reviewed, applied
would have considered it more useful, isn't it?

Because I never send out a format-patch output without looking it
over in an editor, I know I can easily remove it if I find the
"Notes:" out of place in the output, but if the "Notes:" thing
weren't there in the first place I may scratch my head trying to
figure out where to update it if the information there were stale,
so for that reason I'd find it more useful to have Notes: to remind
me where that information comes from.

But that is just my personal preference and I am willing to be
persuaded either way with a better argument than "to me it looks
nicer".

As to indenting, because the material after three-dashes is meant to
be fed to "git apply" or "patch", I'd prefer to keep it to avoid
having to worry about a payload that may look like part of a patch.
This preference is a bit stronger than the presence/absence of
"Notes:".

Thanks.

>  log-tree.c | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/log-tree.c b/log-tree.c
> index bcee7c596696..c1d73d8fecdf 100644
> --- a/log-tree.c
> +++ b/log-tree.c
> @@ -585,7 +585,8 @@ void show_log(struct rev_info *opt)
>  		int raw;
>  		struct strbuf notebuf = STRBUF_INIT;
>  
> -		raw = (opt->commit_format == CMIT_FMT_USERFORMAT);
> +		raw = (opt->commit_format == CMIT_FMT_USERFORMAT) ||
> +			(opt->commit_format == CMIT_FMT_EMAIL);
>  		format_display_notes(commit->object.sha1, &notebuf,
>  				     get_log_output_encoding(), raw);
>  		ctx.notes_message = notebuf.len