From: Philip Oakley Date: Thu, 18 Oct 2012 21:35:25 GMT Subject: Re: [PATCH 6/6] format-patch --notes: show notes after three-dashes Message-ID: In-Reply-To: <1350539128-21577-7-git-send-email-gitster@pobox.com> From: "Junio C Hamano" > When inserting the note after the commit log message to format-patch > output, add three dashes before the note. Record the fact that we > did so in the rev_info and omit showing duplicated three dashes in > the usual codepath that is used when notes are not being shown. > > Signed-off-by: Junio C Hamano Should this also include a documentation update to make this substantive benefit visible, whether that be in the format-patch man pages, the SubmittingPatches guide, in the git-notes description of 'A typical use...', or even in the user-manual? Do you have a preference? > --- > log-tree.c | 15 +++++++++++---- > revision.h | 1 + > t/t4014-format-patch.sh | 7 +++++-- > 3 files changed, 17 insertions(+), 6 deletions(-) > > diff --git a/log-tree.c b/log-tree.c > index 4390b11..712a22b 100644 > --- a/log-tree.c > +++ b/log-tree.c > @@ -677,8 +677,13 @@ void show_log(struct rev_info *opt) > append_signoff(&msgbuf, opt->add_signoff); > > if ((ctx.fmt != CMIT_FMT_USERFORMAT) && > - ctx.notes_message && *ctx.notes_message) > + ctx.notes_message && *ctx.notes_message) { > + if (ctx.fmt == CMIT_FMT_EMAIL) { > + strbuf_addstr(&msgbuf, "---\n"); > + opt->shown_dashes = 1; > + } > strbuf_addstr(&msgbuf, ctx.notes_message); > + } > > if (opt->show_log_size) { > printf("log size %i\n", (int)msgbuf.len); > @@ -710,6 +715,7 @@ void show_log(struct rev_info *opt) > > int log_tree_diff_flush(struct rev_info *opt) > { > + opt->shown_dashes = 0; > diffcore_std(&opt->diffopt); > > if (diff_queue_is_empty()) { > @@ -737,10 +743,11 @@ int log_tree_diff_flush(struct rev_info *opt) > opt->diffopt.output_prefix_data); > fwrite(msg->buf, msg->len, 1, stdout); > } > - if ((pch & opt->diffopt.output_format) == pch) { > - printf("---"); > + if (!opt->shown_dashes) { > + if ((pch & opt->diffopt.output_format) == pch) > + printf("---"); > + putchar('\n'); > } > - putchar('\n'); > } > } > diff_flush(&opt->diffopt); > diff --git a/revision.h b/revision.h > index a95bd0b..059bfff 100644 > --- a/revision.h > +++ b/revision.h > @@ -111,6 +111,7 @@ struct rev_info { > > /* Format info */ > unsigned int shown_one:1, > + shown_dashes:1, > show_merge:1, > show_notes:1, > show_notes_given:1, > diff --git a/t/t4014-format-patch.sh b/t/t4014-format-patch.sh > index bea6381..9750ba6 100755 > --- a/t/t4014-format-patch.sh > +++ b/t/t4014-format-patch.sh > @@ -623,9 +623,12 @@ test_expect_success 'format-patch --signoff' ' > test_expect_success 'format-patch --notes --signoff' ' > git notes --ref test add -m "test message" HEAD && > git format-patch -1 --signoff --stdout --notes=test >out && > - # Notes message must come after S-o-b > + # Three dashes must come after S-o-b > ! sed "/^Signed-off-by: /q" out | grep "test message" && > - sed "1,/^Signed-off-by: /d" out | grep "test message" > + sed "1,/^Signed-off-by: /d" out | grep "test message" && > + # Notes message must come after three dashes > + ! sed "/^---$/q" out | grep "test message" && > + sed "1,/^---$/d" out | grep "test message" > ' > > echo "fatal: --name-only does not make sense" > expect.name-only > -- > 1.8.0.rc3.112.gdb88a5e > > -- > To unsubscribe from this list: send the line "unsubscribe git" in > the body of a message to majordomo@vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html > > > ----- > No virus found in this message. > Checked by AVG - www.avg.com > Version: 2013.0.2741 / Virus Database: 2614/5837 - Release Date: > 10/17/12 >