git@vger.kernel.org mailing list mirror (one of many)
 help / color / mirror / code / Atom feed
From: Junio C Hamano <gitster@pobox.com>
To: Nicolas Morey-Chaisemartin <NMoreyChaisemartin@suse.de>
Cc: git@vger.kernel.org
Subject: Re: [RFC 3/3] log: add an option to generate cover letter from a branch tip
Date: Tue, 14 Nov 2017 22:05:31 +0900	[thread overview]
Message-ID: <xmqqo9o52ep0.fsf@gitster.mtv.corp.google.com> (raw)
In-Reply-To: <92c426bc-5ce9-da7c-5f10-66b5fc46825b@suse.de> (Nicolas Morey-Chaisemartin's message of "Tue, 14 Nov 2017 10:28:21 +0100")

Nicolas Morey-Chaisemartin <NMoreyChaisemartin@suse.de> writes:

> The triple dash is so that the diffstat/shortlog as not seen as
> part of the cover letter.  As said in the cover letter for this
> series, it kinda breaks legacy behaviour right now.  It should
> either be printed only for cover-at-tip, or a new separator should
> be added.

This reminds me of a couple of random thoughts I had, so before I
disconnect from my terminal and forget about them...

[1] format-patch and am must round-trip.

I mentioned four uses cases around the "cover letter at the
tip" in my earlier message

    https://public-inbox.org/git/xmqqbmk68o9d.fsf@gitster.mtv.corp.google.com/

Specifically, (2) we should be able to run "format-patch" and record
the log message of the empty commit at the tip to the cover letter,
and (4) we should be able to accept such output with "am" and end up
with the same sequence of commits as the original (modulo committer
identity and timestamps).  So from the output we produce with this
step, "am" should be able to split the material that came from the
original empty commit from the surrounding cruft like shortlog and
diffstat.  The output format of this step needs to be designed with
that in mind.

[2] reusing cover letter material in merge may not be ideal.

When people write a cover letter, they write different things in it.
What they wanted to achieve, why they chose the approach they took,
how the series is organized, which part of the series they find iffy
and/orneeds special attention from the reviewers, where to find the
previous iteration, what changed since the previous iterations, etc.

All of them are to help the reviewers, many of who have already
looked at the previous rounds, to understand and judge this round of
the submission.

The message in a merge commit as a part of the final history,
however, cannot refer to anything from "previous rounds", as the
previous attempts are not part of the final history readers of "git
log" can refer to whey they are trying to understand the merge.
What exactly goes in a merge commit and how the messages are phrased
may be different from project to project, but for this project, I've
been trying to write them in an end-user facing terms, i.e. they are
designed in such a way that "git log --first-parent --merges" can be
read as if they were entries in the release notes, summarizing fixes
and features by describing their user-visible effects.  This is only
one part of what people write in their cover letters (i.e. "what
they wanted to achive").

So there probably needs a convention meant to be followed by human
users when writing cover letters, so a mechanical process can tell
which part of the text is to be made into the merge commit without
understanding human languages.

  reply	other threads:[~2017-11-14 13:05 UTC|newest]

Thread overview: 25+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-11-10 10:24 [RFC] cover-at-tip Nicolas Morey-Chaisemartin
2017-11-10 15:37 ` Nicolas Morey-Chaisemartin
2017-11-10 18:22   ` Junio C Hamano
2017-11-13  7:58     ` Nicolas Morey-Chaisemartin
2017-11-13  9:48       ` Junio C Hamano
2017-11-13 10:30         ` Junio C Hamano
2017-11-13 10:48           ` Nicolas Morey-Chaisemartin
2017-11-13 17:13           ` [RFC 0/3] Add support for --cover-at-tip Nicolas Morey-Chaisemartin
2017-11-13 19:40             ` Jonathan Tan
2017-11-13 19:53               ` Nicolas Morey-Chaisemartin
2017-11-13 17:13           ` [RFC 1/3] mailinfo: extract patch series id Nicolas Morey-Chaisemartin
2017-11-14  5:47             ` Junio C Hamano
2017-11-14  9:10               ` Nicolas Morey-Chaisemartin
2017-11-13 17:13           ` [RFC 2/3] am: semi working --cover-at-tip Nicolas Morey-Chaisemartin
2017-11-14  6:00             ` Junio C Hamano
2017-11-14  9:17               ` Nicolas Morey-Chaisemartin
2017-11-16 16:21                 ` Nicolas Morey-Chaisemartin
2017-11-17  1:54                   ` Junio C Hamano
2017-11-13 17:13           ` [RFC 3/3] log: add an option to generate cover letter from a branch tip Nicolas Morey-Chaisemartin
2017-11-14  6:14             ` Junio C Hamano
2017-11-14  9:28               ` Nicolas Morey-Chaisemartin
2017-11-14 13:05                 ` Junio C Hamano [this message]
2017-11-14 13:40                   ` Nicolas Morey-Chaisemartin
2017-11-14 14:52                     ` Junio C Hamano
2017-11-10 18:28   ` [RFC] cover-at-tip Jonathan Tan

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

  List information: http://vger.kernel.org/majordomo-info.html

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=xmqqo9o52ep0.fsf@gitster.mtv.corp.google.com \
    --to=gitster@pobox.com \
    --cc=NMoreyChaisemartin@suse.de \
    --cc=git@vger.kernel.org \
    /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.
Code repositories for project(s) associated with this public inbox

	https://80x24.org/mirrors/git.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).