Thanks Jonathan (and all the other cc'd reviewers) for bearing yet another revision! I changed the prefix handling back again as it is more consistent. Once this series is landed, I plan to refactor the prefix handling for all the submodule--helper commands. Thanks, Stefan Interdiff to v18: diff --git a/builtin/submodule--helper.c b/builtin/submodule--helper.c index 882aeca..0272c98 100644 --- a/builtin/submodule--helper.c +++ b/builtin/submodule--helper.c @@ -439,7 +439,7 @@ static int update_clone(int argc, const char **argv, const char *prefix) struct submodule_update_clone suc = SUBMODULE_UPDATE_CLONE_INIT; struct option module_update_clone_options[] = { - OPT_STRING(0, "prefix", &suc.prefix, + OPT_STRING(0, "prefix", &prefix, N_("path"), N_("path into the working tree")), OPT_STRING(0, "recursive-prefix", &suc.recursive_prefix, @@ -464,15 +464,16 @@ static int update_clone(int argc, const char **argv, const char *prefix) N_("git submodule--helper update_clone [--prefix=<path>] [<path>...]"), NULL }; + suc.prefix = prefix; - argc = parse_options(argc, argv, suc.prefix, module_update_clone_options, + argc = parse_options(argc, argv, prefix, module_update_clone_options, git_submodule_helper_usage, 0); if (update) if (parse_submodule_update_strategy(update, &suc.update) < 0) die(_("bad value for update parameter")); - if (module_list_compute(argc, argv, suc.prefix, &pathspec, &suc.list) < 0) + if (module_list_compute(argc, argv, prefix, &pathspec, &suc.list) < 0) return 1; if (pathspec.nr) Stefan Beller (11): submodule-config: keep update strategy around submodule-config: drop check against NULL fetching submodules: respect `submodule.fetchJobs` config option submodule update: direct error message to stderr run_processes_parallel: treat output of children as byte array run-command: expose default_{start_failure, task_finished} run_processes_parallel: rename parameters for the callbacks run_processes_parallel: correctly terminate callbacks with an LF git submodule update: have a dedicated helper for cloning submodule update: expose parallelism to the user clone: allow an explicit argument for parallel submodule clones Documentation/config.txt | 6 + Documentation/git-clone.txt | 6 +- Documentation/git-submodule.txt | 7 +- builtin/clone.c | 19 ++- builtin/fetch.c | 2 +- builtin/submodule--helper.c | 255 ++++++++++++++++++++++++++++++++++++++++ git-submodule.sh | 56 ++++----- run-command.c | 36 +++--- run-command.h | 29 ++++- strbuf.c | 6 + strbuf.h | 6 + submodule-config.c | 19 ++- submodule-config.h | 2 + submodule.c | 37 +++++- submodule.h | 18 +++ t/t5526-fetch-submodules.sh | 14 +++ t/t7400-submodule-basic.sh | 4 +- t/t7406-submodule-update.sh | 27 +++++ 18 files changed, 478 insertions(+), 71 deletions(-) -- 2.7.0.rc0.36.g75877e4.dirty -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html