Volume XXII, number 279Tuesday, October 6, 2026Latest message 49 minutes ago

The Git List

News and archive of git@vger.kernel.org, since April 2005

patchsubmodule--helper: accept '-i' shorthand for update --init

2 messages between Jul 8, 2026 and Jul 8, 2026, from Dominique Martinet, Junio C Hamano.

Plain Markdown or JSON for tools and agents. Diffs are folded; open one to read it.

Dominique MartinetJul 8, 2026, 03:33 UTC on lore

commit 3ad0ba722744 ("git-submodule.sh: improve variables readability") made `git submodules update -i` pass `-i` as is to submodule--helper, but it fails with `error: unknown switch `i'` because the helper does not accept the short option.

All other short options supported by git-submodule.sh are properly handle in the helper, so also add the alias for --init

Fixes: 3ad0ba722744 ("git-submodule.sh: improve variables readability")
Signed-off-by: Dominique Martinet <dominique.martinet@atmark-techno.com>
---
This apparently can't be used much because it's been broken since v2.49,
and it's not in the help, but I guess we might as well fix this since it
used to work?
Thanks!
---
 builtin/submodule--helper.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
Show changes to builtin/submodule--helper.c +1 −1
diff --git a/builtin/submodule--helper.c b/builtin/submodule--helper.c
index 1cc82a134db2..3ec8bf50532e 100644
--- a/builtin/submodule--helper.c
+++ b/builtin/submodule--helper.c
@@ -2990,7 +2990,7 @@ static int module_update(int argc, const char **argv, const char *prefix,
 	struct option module_update_options[] = {
 		OPT__SUPER_PREFIX(&opt.super_prefix),
 		OPT__FORCE(&opt.force, N_("force checkout updates"), 0),
-		OPT_BOOL(0, "init", &opt.init,
+		OPT_BOOL('i', "init", &opt.init,
 			 N_("initialize uninitialized submodules before update")),
 		OPT_BOOL(0, "remote", &opt.remote,
 			 N_("use SHA-1 of submodule's remote tracking branch")),

---
base-commit: 11320dd2066f2139870e36987240abc981cb493c
Junio C HamanoJul 8, 2026, 20:12 UTC in reply to Dominique Martinet on lore

Re: [PATCH] submodule--helper: accept '-i' shorthand for update --init

Dominique Martinet <dominique.martinet@atmark-techno.com> writes:
Show 14 quoted lines
> commit 3ad0ba722744 ("git-submodule.sh: improve variables readability")
> made `git submodules update -i` pass `-i` as is to submodule--helper,
> but it fails with `error: unknown switch `i'` because the helper does
> not accept the short option.
>
> All other short options supported by git-submodule.sh are properly
> handle in the helper, so also add the alias for --init
>
> Fixes: 3ad0ba722744 ("git-submodule.sh: improve variables readability")
> Signed-off-by: Dominique Martinet <dominique.martinet@atmark-techno.com>
> ---
> This apparently can't be used much because it's been broken since v2.49,
> and it's not in the help, but I guess we might as well fix this since it
> used to work?

3ad0ba7227 (git-submodule.sh: improve variables readability, 2024-12-11) is v2.49.0-rc0~107^2~1 and indeed we broke it and nobody has noticed and reported since then. An obvious alternative would be to give a single-liner:

Show changes to diff +1 −1
diff --git c/git-submodule.sh w/git-submodule.sh
index 2999b31fad..9a989edb20 100755
--- c/git-submodule.sh
+++ w/git-submodule.sh
@@ -285,7 +285,7 @@ cmd_update()
 			progress=$1
 			;;
 		-i|--init)
-			init=$1
+			init=--init
 			;;
 		--require-init)
 			require_init=$1


but since anybody should be directly running "git submodule--helper"
by hand, I think it is perfectly fine to teach it a short-option
like your patch does.

Will apply.  Thanks.

Back to recent threads