Submodule branching RFC: https://lore.kernel.org/git/kl6lv912uvjv.fsf@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx/ Original Submodule UX RFC/Discussion: https://lore.kernel.org/git/YHofmWcIAidkvJiD@xxxxxxxxxx/ Contributor Summit submodules Notes: https://lore.kernel.org/git/nycvar.QRO.7.76.6.2110211148060.56@xxxxxxxxxxxxxxxxx/ Submodule UX overhaul updates: https://lore.kernel.org/git/?q=Submodule+UX+overhaul+update This series implements branch --recurse-submodules as laid out in the Submodule branching RFC (linked above). If there are concerns about the UX/behavior, I would appreciate feedback on the RFC thread as well :) This series uses child processes to support submodules. I initially hoped to do this in-core and [1] and [2] were meant to prepare for that. But even though in-core is tantalizingly close, [1] showed that there is more work to be done on config.c before this is possible, and I would like to get more feedback on the UX before converting this to in-core. [1] https://lore.kernel.org/git/20211111171643.13805-1-chooglen@xxxxxxxxxx/ [2] https://lore.kernel.org/git/20211118005325.64971-1-chooglen@xxxxxxxxxx/ Glen Choo (4): submodule-config: add submodules_of_tree() helper branch: refactor out branch validation from create_branch() branch: add --dry-run option to branch branch: add --recurse-submodules option for branch creation Documentation/config/advice.txt | 3 + Documentation/config/submodule.txt | 9 + Documentation/git-branch.txt | 8 +- advice.c | 1 + advice.h | 1 + branch.c | 300 +++++++++++++++++++++-------- branch.h | 41 +++- builtin/branch.c | 77 ++++++-- builtin/submodule--helper.c | 33 ++++ submodule-config.c | 19 ++ submodule-config.h | 13 ++ t/t3200-branch.sh | 30 +++ t/t3207-branch-submodule.sh | 249 ++++++++++++++++++++++++ 13 files changed, 678 insertions(+), 106 deletions(-) create mode 100755 t/t3207-branch-submodule.sh -- 2.33.GIT