[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <de49fe5e-85cb-9fb0-f9f4-c294d72e356c@oracle.com>
Date: Fri, 18 Oct 2019 18:50:51 +0200
From: Vegard Nossum <vegard.nossum@...cle.com>
To: "Theodore Y. Ts'o" <tytso@....edu>
Cc: Santiago Torres Arias <santiago@....edu>, Willy Tarreau <w@....eu>,
workflows@...r.kernel.org, Git Mailing List <git@...r.kernel.org>,
LKML <linux-kernel@...r.kernel.org>,
Konstantin Ryabitsev <konstantin@...uxfoundation.org>,
Eric Wong <e@...24.org>
Subject: Re: email as a bona fide git transport
On 10/18/19 6:15 PM, Theodore Y. Ts'o wrote:
> On Fri, Oct 18, 2019 at 04:27:48PM +0200, Vegard Nossum wrote:
>> commit ac30b08065cd55362a7244a3bbc8df3563cefaaa
>> tree 8f09d9d6ed78f8617b2fe54fe9712990ba808546
>> parent 108b97dc372828f0e72e56bbb40cae8e1e83ece6
>> author Vegard Nossum <vegard.nossum@...cle.com> 1570284959 +0200
>> committer Vegard Nossum <vegard.nossum@...cle.com> 1571408340 +0200
>> gpgsig -----BEGIN PGP SIGNATURE-----
> ...
>
> Would it perhaps be possible to put some or all of these headers after
> the patch, as a set of "trailers"? That would make it easier for
> human readers of the e-mail to get the bits that they most care
> about.... namely, the patch itself. :-)
>
Yes, agreed.
I started out using this approach, but I changed it because the
implementation was a bit annoying: 'git am' runs 'git mailsplit',
which just splits the email into two parts:
1) headers, changelog, and diffstat;
2) diff and signature.
One of my PoC patches changes mailsplit to split the extra metadata into
a third file.
The problem I ran into with putting the metadata at the end was
detecting where the diff ends. A comment in 'git apply' suggested that
detecting the difference between "--" as a diff/signature separator and
as part of the diff is nontrivial in the sense that you need to actually
do some parsing and keep track of hunk sizes.
I can try to put it at the end, but maybe the git people have some hints
that would make the implementation easier? Is it okay to reimplement a
simple diff parser in mailsplit?
Thanks,
Vegard
Powered by blists - more mailing lists