git@vger.kernel.org mailing list mirror (one of many)
 help / color / mirror / code / Atom feed
From: Glen Choo <chooglen@google.com>
To: "Ævar Arnfjörð Bjarmason" <avarab@gmail.com>, git@vger.kernel.org
Cc: "Taylor Blau" <me@ttaylorr.com>,
	"Robert Coup" <robert@coup.net.nz>,
	"Ævar Arnfjörð Bjarmason" <avarab@gmail.com>
Subject: Re: [PATCH v2 10/10] fetch: rename "--submodule-prefix" to "--super-prefix"
Date: Mon, 14 Nov 2022 14:31:22 -0800	[thread overview]
Message-ID: <kl6lsfilnp6t.fsf@chooglen-macbookpro.roam.corp.google.com> (raw)
In-Reply-To: <patch-v2-10.10-100ba36dfb7-20221114T100803Z-avarab@gmail.com>

Thanks for picking this up, especially since you feel "meh" about it :)

Ævar Arnfjörð Bjarmason <avarab@gmail.com> writes:

> In preceding commits we've introduced a command-level "--super-prefix"
> option, which unlike the "git --super-prefix" it replaced doesn't rely
> on setenv() or getenv(), it's just a normal command-line option that
> the command passes down.
>
> Since we've done that, let's rename the "--submodule-prefix" option
> added in 7dce19d374a (fetch/pull: Add the --recurse-submodules option,
> 2010-11-12) to "--super-prefix" for consistency. This:
>
>  * Allows us to use OPT__SUPER_PREFIX().
>  * Leaves an unspecified "--super-prefix" with a "NULL" value, rather
>    than an empty string, as is the case with the other "--super-prefix"
>    users. We coerce the NULL to "" in submodule.c before using it.

[...]

>
> Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
> ---
>  Documentation/fetch-options.txt |  5 -----
>  builtin/fetch.c                 |  7 +++----
>  submodule.c                     | 23 +++++++++++------------
>  3 files changed, 14 insertions(+), 21 deletions(-)
>
> diff --git a/Documentation/fetch-options.txt b/Documentation/fetch-options.txt
> index 622bd84768b..20cbd2c2910 100644
> --- a/Documentation/fetch-options.txt
> +++ b/Documentation/fetch-options.txt
> @@ -241,11 +241,6 @@ endif::git-pull[]
>  	linkgit:git-config[1].
>  
>  ifndef::git-pull[]
> ---submodule-prefix=<path>::
> -	Prepend <path> to paths printed in informative messages
> -	such as "Fetching submodule foo".  This option is used
> -	internally when recursing over submodules.
> -
>  --recurse-submodules-default=[yes|on-demand]::
>  	This option is used internally to temporarily provide a
>  	non-negative default value for the --recurse-submodules
> diff --git a/builtin/fetch.c b/builtin/fetch.c
> index 7378cafeec9..353bcd36d24 100644
> --- a/builtin/fetch.c
> +++ b/builtin/fetch.c
> @@ -74,7 +74,7 @@ static struct string_list deepen_not = STRING_LIST_INIT_NODUP;
>  static struct strbuf default_rla = STRBUF_INIT;
>  static struct transport *gtransport;
>  static struct transport *gsecondary;
> -static const char *submodule_prefix = "";
> +static const char *super_prefix;

Is there a reason we can't keep the '= ""'?

>  static int recurse_submodules = RECURSE_SUBMODULES_DEFAULT;
>  static int recurse_submodules_cli = RECURSE_SUBMODULES_DEFAULT;
>  static int recurse_submodules_default = RECURSE_SUBMODULES_ON_DEMAND;
> @@ -195,8 +195,7 @@ static struct option builtin_fetch_options[] = {
>  	OPT_SET_INT_F(0, "refetch", &refetch,
>  		      N_("re-fetch without negotiating common commits"),
>  		      1, PARSE_OPT_NONEG),
> -	{ OPTION_STRING, 0, "submodule-prefix", &submodule_prefix, N_("dir"),
> -		   N_("prepend this to submodule path output"), PARSE_OPT_HIDDEN },
> +	OPT__SUPER_PREFIX(&super_prefix),
>  	OPT_CALLBACK_F(0, "recurse-submodules-default",
>  		   &recurse_submodules_default, N_("on-demand"),
>  		   N_("default for recursive fetching of submodules "
> @@ -2300,7 +2299,7 @@ int cmd_fetch(int argc, const char **argv, const char *prefix)
>  		add_options_to_argv(&options);
>  		result = fetch_submodules(the_repository,
>  					  &options,
> -					  submodule_prefix,
> +					  super_prefix,
>  					  recurse_submodules,
>  					  recurse_submodules_default,
>  					  verbosity < 0,
> diff --git a/submodule.c b/submodule.c
> index 5ac4e1b0568..1e4eee3492b 100644
> --- a/submodule.c
> +++ b/submodule.c
> @@ -1376,7 +1376,7 @@ struct submodule_parallel_fetch {
>  	int changed_count;
>  	struct strvec args;
>  	struct repository *r;
> -	const char *prefix;
> +	const char *super_prefix;
>  	int command_line_option;
>  	int default_option;
>  	int quiet;
> @@ -1567,7 +1567,7 @@ get_fetch_task_from_index(struct submodule_parallel_fetch *spf,
>  		if (task->repo) {
>  			if (!spf->quiet)
>  				strbuf_addf(err, _("Fetching submodule %s%s\n"),
> -					    spf->prefix, ce->name);
> +					    spf->super_prefix, ce->name);
>  
>  			spf->index_count++;
>  			return task;
> @@ -1629,7 +1629,7 @@ get_fetch_task_from_changed(struct submodule_parallel_fetch *spf,
>  		if (!spf->quiet)
>  			strbuf_addf(err,
>  				    _("Fetching submodule %s%s at commit %s\n"),
> -				    spf->prefix, task->sub->path,
> +				    spf->super_prefix, task->sub->path,
>  				    find_unique_abbrev(cs_data->super_oid,
>  						       DEFAULT_ABBREV));
>  
> @@ -1687,11 +1687,10 @@ static int get_next_submodule(struct child_process *cp, struct strbuf *err,
>  			strvec_pushv(&cp->args, task->git_args.v);
>  		strvec_pushv(&cp->args, spf->args.v);
>  		strvec_push(&cp->args, task->default_argv);
> -		strvec_push(&cp->args, "--submodule-prefix");
> +		strvec_push(&cp->args, "--super-prefix");
>  
> -		strbuf_addf(&submodule_prefix, "%s%s/",
> -						spf->prefix,
> -						task->sub->path);
> +		strbuf_addf(&submodule_prefix, "%s%s/", spf->super_prefix,
> +			    task->sub->path);
>  		strvec_push(&cp->args, submodule_prefix.buf);
>  		*task_cb = task;
>  
> @@ -1707,7 +1706,7 @@ static int get_next_submodule(struct child_process *cp, struct strbuf *err,
>  		spf->oid_fetch_tasks_nr--;
>  
>  		strbuf_addf(&submodule_prefix, "%s%s/",
> -			    spf->prefix, task->sub->path);
> +			    spf->super_prefix, task->sub->path);
>  
>  		child_process_init(cp);
>  		prepare_submodule_repo_env_in_gitdir(&cp->env);
> @@ -1717,7 +1716,7 @@ static int get_next_submodule(struct child_process *cp, struct strbuf *err,
>  		strvec_init(&cp->args);
>  		strvec_pushv(&cp->args, spf->args.v);
>  		strvec_push(&cp->args, "on-demand");
> -		strvec_push(&cp->args, "--submodule-prefix");
> +		strvec_push(&cp->args, "--super-prefix");
>  		strvec_push(&cp->args, submodule_prefix.buf);
>  
>  		/* NEEDSWORK: have get_default_remote from submodule--helper */
> @@ -1813,7 +1812,7 @@ static int fetch_finish(int retvalue, struct strbuf *err,
>  
>  int fetch_submodules(struct repository *r,
>  		     const struct strvec *options,
> -		     const char *prefix, int command_line_option,
> +		     const char *super_prefix, int command_line_option,
>  		     int default_option,
>  		     int quiet, int max_parallel_jobs)
>  {
> @@ -1835,7 +1834,7 @@ int fetch_submodules(struct repository *r,
>  	spf.command_line_option = command_line_option;
>  	spf.default_option = default_option;
>  	spf.quiet = quiet;
> -	spf.prefix = prefix;
> +	spf.super_prefix = super_prefix ? super_prefix : "";
>  
>  	if (!r->worktree)
>  		goto out;
> @@ -1847,7 +1846,7 @@ int fetch_submodules(struct repository *r,
>  	for (i = 0; i < options->nr; i++)
>  		strvec_push(&spf.args, options->v[i]);
>  	strvec_push(&spf.args, "--recurse-submodules-default");
> -	/* default value, "--submodule-prefix" and its value are added later */
> +	/* default value, "--super-prefix" and its value are added later */
>  
>  	calculate_changed_submodule_paths(r, &spf.changed_submodule_names);
>  	string_list_sort(&spf.changed_submodule_names);
> -- 
> 2.38.0.1471.ge4d8947e7aa

  reply	other threads:[~2022-11-14 22:32 UTC|newest]

Thread overview: 105+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-11-09  0:47 [RFC PATCH 0/4] git: remove --super-prefix Glen Choo
2022-11-09  0:47 ` [RFC PATCH 1/4] submodule--helper: teach --toplevel-cwd-prefix Glen Choo
2022-11-09  2:37   ` Ævar Arnfjörð Bjarmason
2022-11-09  0:47 ` [RFC PATCH 2/4] fetch: refactor --submodule-prefix Glen Choo
2022-11-09  3:06   ` Ævar Arnfjörð Bjarmason
2022-11-09  0:47 ` [RFC PATCH 3/4] read-tree: teach --submodule-prefix Glen Choo
2022-11-09  3:13   ` Ævar Arnfjörð Bjarmason
2022-11-09  0:47 ` [RFC PATCH 4/4] git: remove --super-prefix Glen Choo
2022-11-09 19:34 ` [RFC PATCH 0/8] Get rid of "git --super-prefix" Ævar Arnfjörð Bjarmason
2022-11-09 19:34   ` [RFC PATCH 1/8] submodule--helper: don't use global --super-prefix in "absorbgitdirs" Ævar Arnfjörð Bjarmason
2022-11-11  0:12     ` Glen Choo
2022-11-09 19:34   ` [RFC PATCH 2/8] submodule--helper: "deinit" has never used "--super-prefix" Ævar Arnfjörð Bjarmason
2022-11-09 19:34   ` [RFC PATCH 3/8] submodule--helper: convert "foreach" to its own "--super-prefix" Ævar Arnfjörð Bjarmason
2022-11-09 19:34   ` [RFC PATCH 4/8] submodule--helper: convert "sync" " Ævar Arnfjörð Bjarmason
2022-11-09 19:34   ` [RFC PATCH 5/8] submodule--helper: convert "status" " Ævar Arnfjörð Bjarmason
2022-11-09 19:34   ` [RFC PATCH 6/8] submodule--helper: convert "{update,clone}" to their " Ævar Arnfjörð Bjarmason
2022-11-09 19:34   ` [RFC PATCH 7/8] submodule tests: test "git branch -t" output and stderr Ævar Arnfjörð Bjarmason
2022-11-09 19:34   ` [RFC PATCH 8/8] read-tree: add "--super-prefix" option, eliminate global Ævar Arnfjörð Bjarmason
2022-11-11  0:40     ` Glen Choo
2022-11-09 21:21   ` [RFC PATCH 0/8] Get rid of "git --super-prefix" Taylor Blau
2022-11-09 21:47     ` Ævar Arnfjörð Bjarmason
2022-11-09 22:27       ` Taylor Blau
2022-11-09 22:54         ` Ævar Arnfjörð Bjarmason
2022-11-10  0:45   ` Glen Choo
2022-11-10 10:51     ` Ævar Arnfjörð Bjarmason
2022-11-11  1:07       ` Glen Choo
2022-11-11 18:29         ` Glen Choo
2022-11-11 21:17           ` Ævar Arnfjörð Bjarmason
2022-11-11 21:51             ` Taylor Blau
2022-11-12  1:10             ` Glen Choo
2022-11-14 10:09               ` Ævar Arnfjörð Bjarmason
2022-11-14 23:33                 ` Glen Choo
2022-11-15  1:37                   ` Ævar Arnfjörð Bjarmason
2022-11-14 10:08   ` [PATCH v2 00/10] " Ævar Arnfjörð Bjarmason
2022-11-14 10:08     ` [PATCH v2 01/10] read-tree + fetch tests: test failing "--super-prefix" interaction Ævar Arnfjörð Bjarmason
2022-11-14 19:00       ` Glen Choo
2022-11-14 19:14         ` Ævar Arnfjörð Bjarmason
2022-11-14 19:49           ` Glen Choo
2022-11-14 10:08     ` [PATCH v2 02/10] submodule--helper: don't use global --super-prefix in "absorbgitdirs" Ævar Arnfjörð Bjarmason
2022-11-14 21:22       ` Glen Choo
2022-11-17 18:10         ` Ævar Arnfjörð Bjarmason
2022-11-14 10:08     ` [PATCH v2 03/10] submodule--helper: "deinit" has never used "--super-prefix" Ævar Arnfjörð Bjarmason
2022-11-14 10:08     ` [PATCH v2 04/10] submodule--helper: convert "foreach" to its own "--super-prefix" Ævar Arnfjörð Bjarmason
2022-11-14 21:56       ` Glen Choo
2022-11-17 18:14         ` Ævar Arnfjörð Bjarmason
2022-11-14 10:08     ` [PATCH v2 05/10] submodule--helper: convert "sync" " Ævar Arnfjörð Bjarmason
2022-11-14 10:08     ` [PATCH v2 06/10] submodule--helper: convert "status" " Ævar Arnfjörð Bjarmason
2022-11-14 10:08     ` [PATCH v2 07/10] submodule--helper: convert "{update,clone}" to their " Ævar Arnfjörð Bjarmason
2022-11-14 22:04       ` Glen Choo
2022-11-14 10:08     ` [PATCH v2 08/10] submodule tests: test "git branch -t" output and stderr Ævar Arnfjörð Bjarmason
2022-11-14 22:20       ` Glen Choo
2022-11-14 10:08     ` [PATCH v2 09/10] read-tree: add "--super-prefix" option, eliminate global Ævar Arnfjörð Bjarmason
2022-11-14 22:28       ` Glen Choo
2022-11-14 10:08     ` [PATCH v2 10/10] fetch: rename "--submodule-prefix" to "--super-prefix" Ævar Arnfjörð Bjarmason
2022-11-14 22:31       ` Glen Choo [this message]
2022-11-14 21:59     ` [PATCH v2 00/10] Get rid of "git --super-prefix" Taylor Blau
2022-11-14 23:20     ` Glen Choo
2022-11-14 23:39     ` Glen Choo
2022-11-15  1:27       ` Ævar Arnfjörð Bjarmason
2022-11-16 21:07         ` Glen Choo
2022-11-17 18:07           ` Ævar Arnfjörð Bjarmason
2022-11-21 19:16             ` Glen Choo
2022-11-19 12:41     ` [PATCH v3 0/9] " Ævar Arnfjörð Bjarmason
2022-11-19 12:41       ` [PATCH v3 1/9] read-tree + fetch tests: test failing "--super-prefix" interaction Ævar Arnfjörð Bjarmason
2022-11-19 12:41       ` [PATCH v3 2/9] submodule.c & submodule--helper: pass along "super_prefix" param Ævar Arnfjörð Bjarmason
2022-11-19 12:41       ` [PATCH v3 3/9] submodule--helper: don't use global --super-prefix in "absorbgitdirs" Ævar Arnfjörð Bjarmason
2022-11-22 19:53         ` Glen Choo
2022-11-19 12:41       ` [PATCH v3 4/9] submodule--helper: convert "foreach" to its own "--super-prefix" Ævar Arnfjörð Bjarmason
2022-11-19 12:41       ` [PATCH v3 5/9] submodule--helper: convert "sync" " Ævar Arnfjörð Bjarmason
2022-11-19 12:41       ` [PATCH v3 6/9] submodule--helper: convert "status" " Ævar Arnfjörð Bjarmason
2022-11-19 12:41       ` [PATCH v3 7/9] submodule--helper: convert "{update,clone}" to their " Ævar Arnfjörð Bjarmason
2022-11-19 12:41       ` [PATCH v3 8/9] read-tree: add "--super-prefix" option, eliminate global Ævar Arnfjörð Bjarmason
2022-11-22 19:57         ` Glen Choo
2022-11-19 12:41       ` [PATCH v3 9/9] fetch: rename "--submodule-prefix" to "--super-prefix" Ævar Arnfjörð Bjarmason
2022-11-22 22:29       ` [PATCH v3 0/9] Get rid of "git --super-prefix" Glen Choo
2022-12-15  9:32       ` [PATCH v4 " Ævar Arnfjörð Bjarmason
2022-12-15  9:32         ` [PATCH v4 1/9] submodule absorbgitdirs tests: add missing "Migrating git..." tests Ævar Arnfjörð Bjarmason
2022-12-15 20:54           ` Glen Choo
2022-12-20 10:32             ` Ævar Arnfjörð Bjarmason
2022-12-15  9:32         ` [PATCH v4 2/9] read-tree + fetch tests: test failing "--super-prefix" interaction Ævar Arnfjörð Bjarmason
2022-12-15  9:32         ` [PATCH v4 3/9] submodule.c & submodule--helper: pass along "super_prefix" param Ævar Arnfjörð Bjarmason
2022-12-15  9:32         ` [PATCH v4 4/9] submodule--helper: don't use global --super-prefix in "absorbgitdirs" Ævar Arnfjörð Bjarmason
2022-12-15 21:05           ` Glen Choo
2022-12-15  9:32         ` [PATCH v4 5/9] submodule--helper: convert "foreach" to its own "--super-prefix" Ævar Arnfjörð Bjarmason
2022-12-15  9:32         ` [PATCH v4 6/9] submodule--helper: convert "sync" " Ævar Arnfjörð Bjarmason
2022-12-15  9:32         ` [PATCH v4 7/9] submodule--helper: convert "status" " Ævar Arnfjörð Bjarmason
2022-12-15  9:32         ` [PATCH v4 8/9] submodule--helper: convert "{update,clone}" to their " Ævar Arnfjörð Bjarmason
2022-12-15  9:32         ` [PATCH v4 9/9] read-tree: add "--super-prefix" option, eliminate global Ævar Arnfjörð Bjarmason
2022-12-15 21:19         ` [PATCH v4 0/9] Get rid of "git --super-prefix" Glen Choo
2022-12-15 22:19           ` Junio C Hamano
2022-12-15 22:12         ` Junio C Hamano
2022-12-20 12:39         ` [PATCH v5 " Ævar Arnfjörð Bjarmason
2022-12-20 12:39           ` [PATCH v5 1/9] submodule absorbgitdirs tests: add missing "Migrating git..." tests Ævar Arnfjörð Bjarmason
2022-12-20 12:39           ` [PATCH v5 2/9] read-tree + fetch tests: test failing "--super-prefix" interaction Ævar Arnfjörð Bjarmason
2022-12-20 12:39           ` [PATCH v5 3/9] submodule.c & submodule--helper: pass along "super_prefix" param Ævar Arnfjörð Bjarmason
2022-12-20 12:39           ` [PATCH v5 4/9] submodule--helper: don't use global --super-prefix in "absorbgitdirs" Ævar Arnfjörð Bjarmason
2022-12-20 12:39           ` [PATCH v5 5/9] submodule--helper: convert "foreach" to its own "--super-prefix" Ævar Arnfjörð Bjarmason
2022-12-20 12:39           ` [PATCH v5 6/9] submodule--helper: convert "sync" " Ævar Arnfjörð Bjarmason
2022-12-20 12:39           ` [PATCH v5 7/9] submodule--helper: convert "status" " Ævar Arnfjörð Bjarmason
2022-12-20 12:39           ` [PATCH v5 8/9] submodule--helper: convert "{update,clone}" to their " Ævar Arnfjörð Bjarmason
2022-12-20 12:39           ` [PATCH v5 9/9] read-tree: add "--super-prefix" option, eliminate global Ævar Arnfjörð Bjarmason
2022-11-09 21:16 ` [RFC PATCH 0/4] git: remove --super-prefix Taylor Blau
2022-11-09 23:55   ` Glen Choo
2022-11-10  2:14     ` Taylor Blau
2022-11-10 23:49       ` Glen Choo

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=kl6lsfilnp6t.fsf@chooglen-macbookpro.roam.corp.google.com \
    --to=chooglen@google.com \
    --cc=avarab@gmail.com \
    --cc=git@vger.kernel.org \
    --cc=me@ttaylorr.com \
    --cc=robert@coup.net.nz \
    /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).