Re: [PATCH] rebase -x: don't print "Executing:" msgs with --quiet
- From
Elijah Newren <newren@gmail.com>
- Date
- Aug 16, 2024, 06:20 UTC
- Message-ID
- <CABPp-BEd8LvpMMf_sT5zvYrxNVe-Q=oUX7ANQa1f27GmM4=crw@mail.gmail.com>
- In-Reply-To
- <767ea219e3365303535c8b5f0d8eadb28b5e872e.1723778779.git.matheus.tavb@gmail.com>
On Thu, Aug 15, 2024 at 8:26 PM Matheus Tavares <matheus.tavb@gmail.com> wrote:
Show 49 quoted lines
>
> `rebase --exec` doesn't obey --quiet and end up printing a few messages
> about the cmd being executed:
>
> git rebase HEAD~3 --quiet --exec "printf foo >/dev/null"
> Executing: printf foo >/dev/null
> Executing: printf foo >/dev/null
> Executing: printf foo >/dev/null
>
> Let's fix that.
>
> Suggested-by: Rodrigo Siqueira <siqueirajordao@riseup.net>
> Signed-off-by: Matheus Tavares <matheus.tavb@gmail.com>
> ---
> sequencer.c | 8 +++++---
> 1 file changed, 5 insertions(+), 3 deletions(-)
>
> diff --git a/sequencer.c b/sequencer.c
> index 0291920f0b..d5824b41c1 100644
> --- a/sequencer.c
> +++ b/sequencer.c
> @@ -3793,12 +3793,14 @@ static int error_failed_squash(struct repository *r,
> return error_with_patch(r, commit, subject, subject_len, opts, 1, 0);
> }
>
> -static int do_exec(struct repository *r, const char *command_line)
> +static int do_exec(struct repository *r, const char *command_line, int quiet)
> {
> struct child_process cmd = CHILD_PROCESS_INIT;
> int dirty, status;
>
> - fprintf(stderr, _("Executing: %s\n"), command_line);
> + if (!quiet) {
> + fprintf(stderr, _("Executing: %s\n"), command_line);
> + }
> cmd.use_shell = 1;
> strvec_push(&cmd.args, command_line);
> strvec_push(&cmd.env, "GIT_CHERRY_PICK_HELP");
> @@ -5013,7 +5015,7 @@ static int pick_commits(struct repository *r,
> if (!opts->verbose)
> term_clear_line();
> *end_of_arg = '\0';
> - res = do_exec(r, arg);
> + res = do_exec(r, arg, opts->quiet);
> *end_of_arg = saved;
>
> if (res) {
> --
> 2.46.0Makes sense and looks good to me. It's kind surprising just how many places we've ignored --quiet over the years...anyway, thanks for fixing another one of them.