From: ZheNing Hu <adlternative@gmail.com>
To: Junio C Hamano <gitster@pobox.com>
Cc: Christian Couder <christian.couder@gmail.com>,
ZheNing Hu via GitGitGadget <gitgitgadget@gmail.com>,
git <git@vger.kernel.org>
Subject: Re: [PATCH v9 2/2] [GSOC] trailer: add new .cmd config option
Date: Thu, 15 Apr 2021 23:32:54 +0800 [thread overview]
Message-ID: <CAOLTT8TVAvk_Hdcd27jHz5wWOR6xEMuCeQvDfu48qVDFPN666A@mail.gmail.com> (raw)
In-Reply-To: <xmqqv98oy5bh.fsf@gitster.g>
Junio C Hamano <gitster@pobox.com> 于2021年4月15日周四 上午4:33写道:
>
> ZheNing Hu <adlternative@gmail.com> writes:
>
> >> So I am waiting to hear why it is not a misfeature. If it is not,
> >> then surely I am fine to keep it for now and add a workaround later,
> >> but until that happens, I do not think "commit --trailer" can be
> >> used as a way to allow end-users emulate "-s" for their favorite
> >> trailer like helped-by, acked-by, etc.
> >>
> >
> > If it is really necessary to solve this "empty execution" in .cmd,
>
> > Maybe we need to consider two points:
> > * Do we need a new config flag as you said `[implicitExecution = false]`
> > or just drop it? Has anyone been relying on the "empty execution" of
> > .command before? This may be worthy of concern.
>
> Yes, if it is useful sometimes to run the .command or .cmd with
> empty <value> even when nobody asks for it on the command line with
> a "--trailer=<key>:<value>" option, then I agree that the users
> should be able to choose between running and not running [*].
>
> > * Do we need `trailer.<token>.runMode` as Christan said before?
> > I rejected his this suggestion before, and now I regret it a bit.
>
> So far, I haven't heard anything that indicates it is a useful
> behaviour for .command, so my preference is to get rid of the
> behaviour when we introduce .cmd to deprecate .command; yes, until
> we get rid of .command, the behaviour between the two would be
> inconsistent but that is unavoidable when making a bugfix that is
> backward incompatible.
>
> When (and only when) anybody finds a credible use case, we can add a
> mechanism to optionally turn it on (e.g. .runMode).
>
> That is my thinking right at this moment, but that's of course
> subject to change when a use case that would be helped by having
> this extra execution.
>
>
> [Footnote]
>
> * Right now, all I know is that not being able to turn it off makes
> it impossible to use "git commit --trailer" as a more general
> substitute for "git commit --signoff" without breaking other
> trailers (e.g. --trim-empty may get rid of the result of the extra
> execution, but would remove other trailers that can be
> legitimately empty). And making it on by default with
> configuration would mean that even though we designed .cmd as a
> better version of the .command feature with its misdesign
> corrected, we'd inherit one misdesign from it, which defeats one
> third of the point of introducing the .cmd in the first place ;-)
Perhaps such a modification can meet our temporary needs!
@@ -721,9 +738,10 @@ static void process_command_line_args(struct
list_head *arg_head,
char *cl_separators = xstrfmt("=%s", separators);
/* Add an arg item for each configured trailer with a command */
list_for_each(pos, &conf_head) {
item = list_entry(pos, struct arg_item, list);
- if (item->conf.cmd || item->conf.command)
+ if (item->conf.command)
I'm so busy today that I probably haven't had time to put this into a
patch today,
If this solution is reasonable, I will send a new version of the patch tomorrow.
As you said, first solve the misfeature, and we can add [trailer.runMode] later.
Thanks, Junio!
--
ZheNing Hu
next prev parent reply other threads:[~2021-04-15 15:33 UTC|newest]
Thread overview: 101+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-03-23 14:53 [PATCH] [GSOC]trailer: change $ARG to environment variable ZheNing Hu via GitGitGadget
2021-03-24 15:42 ` [PATCH v2] [GSOC]trailer: pass arg as positional parameter ZheNing Hu via GitGitGadget
2021-03-24 20:18 ` Junio C Hamano
2021-03-25 1:43 ` ZheNing Hu
2021-03-25 11:53 ` [PATCH v3] " ZheNing Hu via GitGitGadget
2021-03-25 22:28 ` Junio C Hamano
2021-03-26 13:29 ` ZheNing Hu
2021-03-26 16:13 ` [PATCH v4] " ZheNing Hu via GitGitGadget
2021-03-27 18:04 ` Junio C Hamano
2021-03-27 19:53 ` Christian Couder
2021-03-28 10:46 ` ZheNing Hu
2021-03-29 9:04 ` Christian Couder
2021-03-29 13:43 ` ZheNing Hu
2021-03-30 8:45 ` Christian Couder
2021-03-30 11:22 ` ZheNing Hu
2021-03-30 15:07 ` ZheNing Hu
2021-03-30 17:14 ` Junio C Hamano
2021-03-31 5:14 ` ZheNing Hu
2021-03-31 18:19 ` Junio C Hamano
2021-03-31 18:29 ` Junio C Hamano
2021-04-01 3:56 ` ZheNing Hu
2021-04-01 19:49 ` Junio C Hamano
2021-04-02 2:08 ` ZheNing Hu
2021-04-01 3:39 ` ZheNing Hu
2021-03-31 10:05 ` [PATCH v5 0/2] " ZheNing Hu via GitGitGadget
2021-03-31 10:05 ` [PATCH v5 1/2] [GSOC] run-command: add shell_no_implicit_args option ZheNing Hu via GitGitGadget
2021-04-01 7:22 ` Christian Couder
2021-04-01 9:58 ` ZheNing Hu
2021-03-31 10:05 ` [PATCH v5 2/2] [GSOC]trailer: pass arg as positional parameter ZheNing Hu via GitGitGadget
2021-04-01 7:28 ` [PATCH v5 0/2] " Christian Couder
2021-04-01 10:02 ` ZheNing Hu
2021-04-02 13:26 ` [PATCH v6] [GSOC] trailer: add new trailer.<token>.cmd config option ZheNing Hu via GitGitGadget
2021-04-02 20:48 ` Junio C Hamano
2021-04-03 5:08 ` ZheNing Hu
2021-04-04 5:34 ` Junio C Hamano
2021-04-03 5:51 ` Christian Couder
2021-04-04 23:26 ` Junio C Hamano
2021-04-06 3:47 ` Christian Couder
2021-04-06 3:52 ` Christian Couder
2021-04-06 5:16 ` ZheNing Hu
2021-04-06 5:34 ` Junio C Hamano
2021-04-06 5:37 ` Junio C Hamano
2021-04-04 5:43 ` ZheNing Hu
2021-04-04 8:52 ` Christian Couder
2021-04-04 9:53 ` ZheNing Hu
2021-04-02 23:44 ` Junio C Hamano
2021-04-03 3:22 ` ZheNing Hu
2021-04-03 4:31 ` Junio C Hamano
2021-04-03 5:15 ` ZheNing Hu
2021-04-04 13:11 ` [PATCH v7] " ZheNing Hu via GitGitGadget
2021-04-06 16:23 ` Christian Couder
2021-04-07 4:51 ` ZheNing Hu
2021-04-09 13:37 ` [PATCH v8 0/2] [GSOC] trailer: add new .cmd " ZheNing Hu via GitGitGadget
2021-04-09 13:37 ` [PATCH v8 1/2] [GSOC] docs: correct descript of trailer.<token>.command ZheNing Hu via GitGitGadget
2021-04-09 19:02 ` Christian Couder
2021-04-10 13:40 ` ZheNing Hu
2021-04-09 13:37 ` [PATCH v8 2/2] [GSOC] trailer: add new .cmd config option ZheNing Hu via GitGitGadget
2021-04-09 20:18 ` Christian Couder
2021-04-10 14:09 ` ZheNing Hu
2021-04-09 19:59 ` [PATCH v8 0/2] " Christian Couder
2021-04-12 16:39 ` [PATCH v9 " ZheNing Hu via GitGitGadget
2021-04-12 16:39 ` [PATCH v9 1/2] [GSOC] docs: correct descript of trailer.<token>.command ZheNing Hu via GitGitGadget
2021-04-12 20:42 ` Junio C Hamano
2021-04-16 12:03 ` Christian Couder
2021-04-17 1:54 ` Junio C Hamano
2021-04-12 16:39 ` [PATCH v9 2/2] [GSOC] trailer: add new .cmd config option ZheNing Hu via GitGitGadget
2021-04-12 20:51 ` Junio C Hamano
2021-04-13 7:33 ` Christian Couder
2021-04-13 12:02 ` ZheNing Hu
2021-04-13 19:18 ` Junio C Hamano
2021-04-14 13:27 ` ZheNing Hu
2021-04-14 20:33 ` Junio C Hamano
2021-04-15 15:32 ` ZheNing Hu [this message]
2021-04-15 17:41 ` Junio C Hamano
2021-04-16 12:54 ` Christian Couder
2021-04-13 18:14 ` Junio C Hamano
2021-04-16 8:47 ` [PATCH v10 0/2] " ZheNing Hu via GitGitGadget
2021-04-16 8:47 ` [PATCH v10 1/2] [GSOC] docs: correct descript of trailer.<token>.command ZheNing Hu via GitGitGadget
2021-04-16 19:11 ` Junio C Hamano
2021-04-16 8:47 ` [PATCH v10 2/2] [GSOC] trailer: add new .cmd config option ZheNing Hu via GitGitGadget
2021-04-16 19:13 ` Junio C Hamano
2021-04-16 19:21 ` Junio C Hamano
2021-04-16 19:25 ` Junio C Hamano
2021-04-17 2:58 ` Junio C Hamano
2021-04-17 3:36 ` Junio C Hamano
2021-04-17 7:41 ` ZheNing Hu
2021-04-17 8:11 ` Junio C Hamano
2021-04-17 15:13 ` [PATCH v11 0/2] " ZheNing Hu via GitGitGadget
2021-04-17 15:13 ` [PATCH v11 1/2] [GSOC] docs: correct description of .command ZheNing Hu via GitGitGadget
2021-04-17 15:13 ` [PATCH v11 2/2] [GSOC] trailer: add new .cmd config option ZheNing Hu via GitGitGadget
2021-04-17 22:26 ` [PATCH v11 0/2] " Junio C Hamano
2021-04-18 7:47 ` ZheNing Hu
2021-04-21 0:09 ` Junio C Hamano
2021-04-21 5:47 ` ZheNing Hu
2021-04-21 23:40 ` Junio C Hamano
2021-04-22 9:20 ` ZheNing Hu
2021-04-27 6:49 ` Junio C Hamano
2021-04-27 12:24 ` ZheNing Hu
2021-05-03 15:41 ` [PATCH v12 " ZheNing Hu via GitGitGadget
2021-05-03 15:41 ` [PATCH v12 1/2] [GSOC] docs: correct descript of trailer.<token>.command ZheNing Hu via GitGitGadget
2021-05-03 15:41 ` [PATCH v12 2/2] [GSOC] trailer: add new .cmd config option ZheNing Hu via GitGitGadget
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=CAOLTT8TVAvk_Hdcd27jHz5wWOR6xEMuCeQvDfu48qVDFPN666A@mail.gmail.com \
--to=adlternative@gmail.com \
--cc=christian.couder@gmail.com \
--cc=git@vger.kernel.org \
--cc=gitgitgadget@gmail.com \
--cc=gitster@pobox.com \
/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).