git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Junio C Hamano <gitster@pobox.com>
To: "Drew DeVault" <drew@ddevault.org>
Cc: "Aditya Garg" <gargaditya08@live.com>,  <git@vger.kernel.org>,
	 "Martin von Zweigbergk" <martinvonz@google.com>,
	 "Patrick Steinhardt" <ps@pks.im>,
	 "Andy Koppe" <andy.koppe@gmail.com>,
	 "Remo Senekowitsch" <remo@buenzli.dev>,
	 "Jeff King" <peff@peff.net>
Subject: Re: [PATCH v2 1/2] pretty: add X-Change-ID to mail formats
Date: Sun, 06 Jul 2025 22:53:51 -0700	[thread overview]
Message-ID: <xmqqfrf88s28.fsf@gitster.g> (raw)
In-Reply-To: <xmqqfrf8ait6.fsf@gitster.g> (Junio C. Hamano's message of "Sun, 06 Jul 2025 18:30:45 -0700")

Junio C Hamano <gitster@pobox.com> writes:

>> IMO the right way forward is to use a mail header.
>
> No.  In the change-id case, trailer is the right way to go.
> ...
> But after thinking thrice, we may find a set of good pieces of
> information that should be added as new commit header ...
> ... and there will be times when we need
> to convey them over e-mailed workflow to allow patch recipient not
> to lose such information.

Or a third-party software may add a new commit header without
gauging and waiting for the community consensus anyway, which may or
may not have much structural meaning, and then we may want to extract
that piece of information hidden in the commit header out, because
it was not written as trailer (in which case there wouldn't have
needed any extra effort to extract it in the first place).

This part can use a bit of clarification.

My endorsement below to use an extra e-mail header applies when some
commit objects ended up with extra non-standard headers holding
pieces of information that we want to send as part of a patch,
whether it is a good idea or a bad idea to place that particular
kind of information in a commit header.  And the question is "Now,
what is the best way to transfer it over a patched e-mail?"

If it were a good idea to place that particular kind of information
in a header, that is of course an effort worth investing in.

If it were a horrible idea to place it in a header, it still is
worth investing in an effort to give ourselves a way to salvage such
information out of the header, even though we wouldn't have needed
such extra tool if they didn't hide it in the header.

But once a generic mechanism is written, then Git does not have to
behave differently if an extra commit header is something a more
recent versions of Git tools started using after the idea gained
community consensus, or a third-party software unilaterally added
without gauging or waiting for community consensus.  The same single
mechanism can be used to extract the information and carry it in
e-mails, and mailinfo can be told to extract it out.  It can be left
up to the consumer after mailinfo disects the pieces of information
out of the e-mail.

> In such a case, I fully agree that embedding in an e-mail header
> would be the way to go.
>
> I would suggest a lot more generic implementation to solve it once
> and for all.  How about doing it more like this:
>
>    "git format-patch --extra-headers" grabs all extra headers
>    (i.e. those that are not the bog-standard "tree", "parent",
>    "author", "committer") and emit these
>
>     X-git-extra-commit-header: encoding=iso8859-1
>     X-git-extra-commit-header: frotz=nitfol
>
>    next to "Subject:", etc.

  reply	other threads:[~2025-07-07  5:53 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-07-03 11:29 [PATCH v2 1/2] pretty: add X-Change-ID to mail formats Drew DeVault
2025-07-03 11:29 ` [PATCH v2 2/2] am: import X-Change-ID from email headers Drew DeVault
2025-07-06  3:37 ` [PATCH v2 1/2] pretty: add X-Change-ID to mail formats Jeff King
2025-07-06 10:46   ` Drew DeVault
2025-07-06  6:20 ` Aditya Garg
2025-07-06 10:41   ` Drew DeVault
2025-07-07  1:30     ` Junio C Hamano
2025-07-07  5:53       ` Junio C Hamano [this message]
2025-07-07  6:57         ` Martin von Zweigbergk
2025-07-07  6:59           ` Martin von Zweigbergk
2025-07-07 12:40             ` Junio C Hamano
2025-07-07  7:12           ` Drew DeVault
2025-07-07  7:09       ` Drew DeVault
2025-08-19 17:45 ` Remo Senekowitsch
2025-08-20  7:29   ` Drew DeVault
2025-08-21  0:50     ` Junio C Hamano
2025-08-21  8:52       ` Drew DeVault

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

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

  git send-email \
    --in-reply-to=xmqqfrf88s28.fsf@gitster.g \
    --to=gitster@pobox.com \
    --cc=andy.koppe@gmail.com \
    --cc=drew@ddevault.org \
    --cc=gargaditya08@live.com \
    --cc=git@vger.kernel.org \
    --cc=martinvonz@google.com \
    --cc=peff@peff.net \
    --cc=ps@pks.im \
    --cc=remo@buenzli.dev \
    /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.
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 NNTP newsgroup(s).