Brandon Williams <bmwill@xxxxxxxxxx> writes: > v3 builds upon v2 by adding 3 additional patches to add functionality to also > propagate the remote and refspec down to children process's working to push > submodules. The remote and refspec will only be propagated if the provided > remote is configured. A remote provided in the form of a URL will cause the > remote and refspec to not be propagated down to the submodules and instead the > default remote and refspec will be used, preserving existing functionality. > Currently the only supported LHS of a refspec must exactly match a single ref > in the submodule (e.g. a branch name). > > Patches [1/5] and [2/5] remain unchanged from v2. 2/5 seems to be a bit different in 5545 ll.156,+6, though. > > Brandon Williams (5): > push: unmark a local variable as static > push: propagate push-options with --recurse-submodules > remote: expose parse_push_refspec function > submodule--helper: add push-check subcommand > push: propagate remote and refspec with --recurse-submodules > > builtin/push.c | 5 +-- > builtin/submodule--helper.c | 45 +++++++++++++++++++++++++ > remote.c | 2 +- > remote.h | 1 + > submodule.c | 74 +++++++++++++++++++++++++++++++++++++++--- > submodule.h | 5 ++- > t/t5531-deep-submodule-push.sh | 52 +++++++++++++++++++++++++++++ > t/t5545-push-options.sh | 40 +++++++++++++++++++++++ > transport.c | 4 ++- > 9 files changed, 219 insertions(+), 9 deletions(-)