git@vger.kernel.org mailing list mirror (one of many)
 help / color / mirror / code / Atom feed
From: Thomas Gummerer <t.gummerer@gmail.com>
To: Elia Pinto <gitter.spiros@gmail.com>
Cc: git@vger.kernel.org, martin.agren@gmail.com, pclouds@gmail.com,
	sunshine@sunshineco.com, karen@codesynthesis.com
Subject: Re: [PATCH v2] worktree: add --quiet option
Date: Wed, 15 Aug 2018 23:36:05 +0100	[thread overview]
Message-ID: <20180815223605.GA11326@hank.intra.tgummerer.com> (raw)
In-Reply-To: <20180815205630.32876-1-gitter.spiros@gmail.com>

On 08/15, Elia Pinto wrote:
> Add the '--quiet' option to git worktree,
> as for the other git commands. 'add' is the
> only command affected by it since all other
> commands, except 'list', are currently
> silent by default.
> 
> Helped-by: Martin Ågren <martin.agren@gmail.com>
> Helped-by: Duy Nguyen <pclouds@gmail.com>
> Helped-by: Eric Sunshine <sunshine@sunshineco.com>
> Signed-off-by: Elia Pinto <gitter.spiros@gmail.com>
> ---
> This is the second version of the patch.
> 
> Changes from the first version
> (https://public-inbox.org/git/CACsJy8A=zp7nFBuWyfeP4UFf3KSsiaor3m0mtgVnhcEYHSw4HA@mail.gmail.com/T/):
> 
> - deleted garbage in git-worktree.c and deleted
> superfluous blank line in git-worktree.txt.
> - when giving "--quiet" to 'add', call git symbolic-ref also with
> "--quiet".
> - changed the commit message to be more general, but
> specifying why the "--quiet" option is meaningful only for
> the 'add' command of git-worktree.
> - in git-worktree.txt the option
> "--quiet" is described near the "--verbose" option.
> 
>  Documentation/git-worktree.txt |  4 ++++
>  builtin/worktree.c             | 16 +++++++++++++---
>  t/t2025-worktree-add.sh        |  5 +++++
>  3 files changed, 22 insertions(+), 3 deletions(-)
> 
> diff --git a/Documentation/git-worktree.txt b/Documentation/git-worktree.txt
> index 9c26be40f..29a5b7e25 100644
> --- a/Documentation/git-worktree.txt
> +++ b/Documentation/git-worktree.txt
> @@ -173,6 +173,10 @@ This can also be set up as the default behaviour by using the
>  	This format will remain stable across Git versions and regardless of user
>  	configuration.  See below for details.
>  
> +-q::
> +--quiet::
> +	With 'add', suppress feedback messages.

Very minor nit here, we seem to use backticks everywhere else in this
document, maybe we sould do that here as well?  Not sure it's worth
another iteration though.

The rest of the patch looks good to me, thanks!

>  -v::
>  --verbose::
>  	With `prune`, report all removals.
> diff --git a/builtin/worktree.c b/builtin/worktree.c
> index a763dbdcc..41e771439 100644
> --- a/builtin/worktree.c
> +++ b/builtin/worktree.c
> @@ -27,6 +27,7 @@ static const char * const worktree_usage[] = {
>  struct add_opts {
>  	int force;
>  	int detach;
> +	int quiet;
>  	int checkout;
>  	int keep_locked;
>  };
> @@ -303,9 +304,13 @@ static int add_worktree(const char *path, const char *refname,
>  	if (!is_branch)
>  		argv_array_pushl(&cp.args, "update-ref", "HEAD",
>  				 oid_to_hex(&commit->object.oid), NULL);
> -	else
> +	else {
>  		argv_array_pushl(&cp.args, "symbolic-ref", "HEAD",
>  				 symref.buf, NULL);
> +		if (opts->quiet)
> +			argv_array_push(&cp.args, "--quiet");
> +	}
> +
>  	cp.env = child_env.argv;
>  	ret = run_command(&cp);
>  	if (ret)
> @@ -315,6 +320,8 @@ static int add_worktree(const char *path, const char *refname,
>  		cp.argv = NULL;
>  		argv_array_clear(&cp.args);
>  		argv_array_pushl(&cp.args, "reset", "--hard", NULL);
> +		if (opts->quiet)
> +			argv_array_push(&cp.args, "--quiet");
>  		cp.env = child_env.argv;
>  		ret = run_command(&cp);
>  		if (ret)
> @@ -437,6 +444,7 @@ static int add(int ac, const char **av, const char *prefix)
>  		OPT_BOOL(0, "detach", &opts.detach, N_("detach HEAD at named commit")),
>  		OPT_BOOL(0, "checkout", &opts.checkout, N_("populate the new working tree")),
>  		OPT_BOOL(0, "lock", &opts.keep_locked, N_("keep the new working tree locked")),
> +		OPT__QUIET(&opts.quiet, N_("suppress progress reporting")),
>  		OPT_PASSTHRU(0, "track", &opt_track, NULL,
>  			     N_("set up tracking mode (see git-branch(1))"),
>  			     PARSE_OPT_NOARG | PARSE_OPT_OPTARG),
> @@ -491,8 +499,8 @@ static int add(int ac, const char **av, const char *prefix)
>  			}
>  		}
>  	}
> -
> -	print_preparing_worktree_line(opts.detach, branch, new_branch, !!new_branch_force);
> +	if (!opts.quiet)
> +		print_preparing_worktree_line(opts.detach, branch, new_branch, !!new_branch_force);
>  
>  	if (new_branch) {
>  		struct child_process cp = CHILD_PROCESS_INIT;
> @@ -500,6 +508,8 @@ static int add(int ac, const char **av, const char *prefix)
>  		argv_array_push(&cp.args, "branch");
>  		if (new_branch_force)
>  			argv_array_push(&cp.args, "--force");
> +		if (opts.quiet)
> +			argv_array_push(&cp.args, "--quiet");
>  		argv_array_push(&cp.args, new_branch);
>  		argv_array_push(&cp.args, branch);
>  		if (opt_track)
> diff --git a/t/t2025-worktree-add.sh b/t/t2025-worktree-add.sh
> index be6e09314..658647d83 100755
> --- a/t/t2025-worktree-add.sh
> +++ b/t/t2025-worktree-add.sh
> @@ -252,6 +252,11 @@ test_expect_success 'add -B' '
>  	test_cmp_rev master^ poodle
>  '
>  
> +test_expect_success 'add --quiet' '
> +	git worktree add --quiet ../foo master >expected 2>&1 &&
> +	test_must_be_empty expected
> +'
> +
>  test_expect_success 'local clone from linked checkout' '
>  	git clone --local here here-clone &&
>  	( cd here-clone && git fsck )
> -- 
> 2.18.0.723.g64e6cc43e.dirty
> 

  reply	other threads:[~2018-08-15 22:36 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-08-15 20:56 [PATCH v2] worktree: add --quiet option Elia Pinto
2018-08-15 22:36 ` Thomas Gummerer [this message]
2018-08-16  4:40 ` Martin Ågren
2018-08-16  8:25   ` Eric Sunshine
2018-08-16 10:11     ` Martin Ågren
2018-08-16  8:43 ` Eric Sunshine
2018-08-16 20:38 ` Junio C Hamano
2018-08-16 20:42   ` Junio C Hamano

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

  List information: http://vger.kernel.org/majordomo-info.html

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

  git send-email \
    --in-reply-to=20180815223605.GA11326@hank.intra.tgummerer.com \
    --to=t.gummerer@gmail.com \
    --cc=git@vger.kernel.org \
    --cc=gitter.spiros@gmail.com \
    --cc=karen@codesynthesis.com \
    --cc=martin.agren@gmail.com \
    --cc=pclouds@gmail.com \
    --cc=sunshine@sunshineco.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.
Code repositories for project(s) associated with this public inbox

	https://80x24.org/mirrors/git.git

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 read-only IMAP folder(s) and NNTP newsgroup(s).