Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.kernel.org/pub/scm/git/git.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJunio C Hamano <gitster@pobox.com>2022-11-23 05:22:25 +0300
committerJunio C Hamano <gitster@pobox.com>2022-11-23 05:22:25 +0300
commit173fc54b005c92dc0da0fe5e71034128eddbacc8 (patch)
tree869d4529c5bc12b559393391d3dcc45b9260b980 /builtin
parent8d7b35b43df56bacd005492402c6a583284c0fec (diff)
parente62f779ae67ce3babe9e4ee934469993a5e6df49 (diff)
Merge branch 'jt/submodule-on-demand'
Push all submodules recursively with '--recurse-submodules=on-demand'. * jt/submodule-on-demand: Doc: document push.recurseSubmodules=only
Diffstat (limited to 'builtin')
-rw-r--r--builtin/push.c12
1 files changed, 10 insertions, 2 deletions
diff --git a/builtin/push.c b/builtin/push.c
index f0329c62a2..60ac8017e5 100644
--- a/builtin/push.c
+++ b/builtin/push.c
@@ -466,8 +466,16 @@ static int option_parse_recurse_submodules(const struct option *opt,
if (unset)
*recurse_submodules = RECURSE_SUBMODULES_OFF;
- else
- *recurse_submodules = parse_push_recurse_submodules_arg(opt->long_name, arg);
+ else {
+ if (!strcmp(arg, "only-is-on-demand")) {
+ if (*recurse_submodules == RECURSE_SUBMODULES_ONLY) {
+ warning(_("recursing into submodule with push.recurseSubmodules=only; using on-demand instead"));
+ *recurse_submodules = RECURSE_SUBMODULES_ON_DEMAND;
+ }
+ } else {
+ *recurse_submodules = parse_push_recurse_submodules_arg(opt->long_name, arg);
+ }
+ }
return 0;
}