Re: [PATCH RFC] git-am: support any number of signatures
- From
Jeff King <peff@peff.net>
- Date
- Oct 7, 2014, 21:39 UTC
- Message-ID
- <20141007213859.GB24508@peff.net>
- In-Reply-To
- <20141007212937.GA14632@redhat.com>
On Wed, Oct 08, 2014 at 12:29:37AM +0300, Michael S. Tsirkin wrote:
Show 16 quoted lines
> > If I understand it correctly, Michael is envisioning to implement
> > his "git am -s art" (I would recommend against reusing -s for this,
> > though. "git am --trailer art" is fine) and doing so by using
> > interpret-trailers as an internal implementation detail, so I would
> > say the above is a perfectly fine way to do so. An equivalent of
> > that command line is synthesized and run internally in his version
> > of "git am" when his "git am" sees "--trailer art" option using
> > those am.{"a","r","t"}.trailer configuration variables.
>
> Hmm I wonder why do you dislike reusing -s with a parameter for this.
> To me, this looks like a superset of the default -s functionality: -s
> adds the default signature, -s "x" adds signature "x" ... Users don't
> really care that one is implemented as a trailer and another isn't. In
> fact, default -s can be implemented as a trailer too, right?
>
> Could you clarify please?Optional parameters for arguments make backwards-compatibility tricky. In this case, the command:
git am -s mbox1 mbox2
means "apply the patches from mbox1 and mbox2, and signoff the patches". Under your scheme, it now means "apply from mbox2, and use the trailer mbox1".
I think it would make more sense for "-s" to use a trailer called "signoff" if it is configured (and if not, have a baked-in "signoff" trailer config that behaves like "-s" does now). So "-s" (and "--signoff") become "sign off in the way I usually do for my project", not just "add a signed-off-by line". If you want to something more fancy, you have to use "--trailer=...".
Just my two cents, as one who has not been closely following this discussion. Apologies if this idea was already presented and shot down. :)
-Peff