NOTE: This series uses ar/submodule-run-update-procedure [1] This series builds upon the previous conversion work on 'submodule update' and moves out all of that shell logic in 'git-submodule.sh' into 'builtin/submodule--helper.c'. Even though this patch series looks long, a lot of it is preparatory patches and cleanup of unused functions that result from this conversion. The real action happens at [6/8]. As with the other series, the goal is to be a faithful conversion, with no change in behaviour. This would be the last command whose logic would be moved into C, other than 'submodule add', whose patches have been sent already. After this works out, we can invert the shell-C relationship and make 'submodule' a proper C builtin. Fetch-it-Via: git fetch https://github.com/tfidfwastaken/git submodule-update-list-1 [1] https://lore.kernel.org/git/20210824140609.1496-1-raykar.ath@xxxxxxxxx/ Atharva Raykar (13): submodule--helper: split up ensure_core_worktree() submodule--helper: get remote names from any repository submodule--helper: introduce get_default_remote_submodule() submodule--helper: rename helpers for update-clone submodule--helper: refactor get_submodule_displaypath() submodule: move core cmd_update() logic to C submodule: remove fetch_in_submodule shell function submodule--helper: remove update-clone subcommand submodule--helper: remove update-module-mode subcommand submodule--helper: remove shell interface to ensure_core_worktree() submodule--helper: remove print-default-remote subcommand submodule--helper: remove relative-path subcommand submodule--helper: remove run-update-procedure subcommand builtin/submodule--helper.c | 764 +++++++++++++++++++++--------------- git-submodule.sh | 145 +------ 2 files changed, 455 insertions(+), 454 deletions(-) -- 2.32.0