Original series: https://lore.kernel.org/git/20220210092833.55360-1-chooglen@google.com
= Patch summary
- Patch 1 adds extra tests to "git submodule update" to make sure we
don't break anything
- Patch 2 removes dead code that used to be part of "git submodule
update"
- Patch 3 prepares for later changes by introducing the C function that
will hold most of the newly converted code
- Patch 4 moves run-update-procedure's --suboid option into C
- Patch 5 moves ensure-core-worktree into C
- Patches 6-8 move run-update-procedure's --remote option into C
- Patches 9-11 move "git submodule update"'s --init into C
- Patches 12-13 move "git submodule update"'s --filter option into C
= Changes
Since v3:
- Move 'remove ensure-core-worktree' towards the end (see
xmqqbkymaftr.fsf@gitster.g).
- Fix typo
Since v2:
- Patch 6: Fix a stale commit message that said 'in the next patch'.
- Patch 9: Fix an overly long line (spotted by Ævar in an older iteration of
ar/submodule-update)
- Patch 12: Test for usage using test_expect_code
- Patch 13: Add missing spaces to the usage string
Since v1:
- Fix compilation error due to bad rebase
- Remove accidentally included tests
- Fix a NEEDSWORK (it was a leftover from ar/submodule-update)
Atharva Raykar (3):
submodule--helper: get remote names from any repository
submodule--helper: refactor get_submodule_displaypath()
submodule--helper: allow setting superprefix for init_submodule()
Glen Choo (8):
submodule--helper: remove update-module-mode
submodule--helper: reorganize code for sh to C conversion
submodule--helper run-update-procedure: remove --suboid
submodule--helper run-update-procedure: learn --remote
submodule--helper update-clone: learn --init
submodule--helper: remove ensure-core-worktree
submodule update: add tests for --filter
submodule--helper update-clone: check for --filter and --init
Ævar Arnfjörð Bjarmason (2):
submodule tests: test for init and update failure output
submodule--helper: don't use bitfield indirection for parse_options()
builtin/submodule--helper.c | 248 +++++++++++++++++++--------------
git-submodule.sh | 54 +------
t/t7406-submodule-update.sh | 26 +++-
t/t7408-submodule-reference.sh | 14 +-
4 files changed, 183 insertions(+), 159 deletions(-)
Range-diff against v3:
1: 6138f4682c = 1: 6138f4682c submodule tests: test for init and update failure output
2: 6c83c78819 = 2: 6c83c78819 submodule--helper: remove update-module-mode
3: 9524986096 = 3: 9524986096 submodule--helper: reorganize code for sh to C conversion
4: f42f3de2b7 ! 4: 533de2c787 submodule--helper run-update-procedure: remove --suboid
@@ Commit message
submodule--helper run-update-procedure: remove --suboid
Teach run-update-procedure to determine the oid of the submodule's HEAD
- instead of doing it in git-subomdule.sh.
+ instead of doing it in git-submodule.sh.
Signed-off-by: Glen Choo <chooglen@google.com>
6: 8dc7bc5894 = 5: bcc90c332b submodule--helper: get remote names from any repository
7: feaf9f45d8 = 6: 93dd851882 submodule--helper: don't use bitfield indirection for parse_options()
8: 91e8e1a007 = 7: 1aff3622bc submodule--helper run-update-procedure: learn --remote
9: aba851e71e = 8: c59d6a9b3c submodule--helper: refactor get_submodule_displaypath()
10: 2155c049a2 = 9: 28bc5887ea submodule--helper: allow setting superprefix for init_submodule()
11: 03bbc39a06 = 10: 364d996481 submodule--helper update-clone: learn --init
5: b0a0cae633 ! 11: 3b7d961ade submodule--helper: remove ensure-core-worktree
@@ Commit message
submodule--helper: remove ensure-core-worktree
Move the logic of "git submodule--helper ensure-core-worktree" into
- run-update-procedure. Since the ensure-core-worktree command is
- obsolete, remove it.
+ run-update-procedure, and since this makes the ensure-core-worktree
+ command obsolete, remove it.
+
+ As a result, the order of two operations in git-submodule.sh is
+ reversed: 'set the value of core.worktree' now happens after the call to
+ "git submodule--helper relative-path". This is safe - "relative-path"
+ does not depend on the value of core.worktree.
Signed-off-by: Glen Choo <chooglen@google.com>
12: e49b26ad94 = 12: 70e00d294c submodule update: add tests for --filter
13: c97c97948a = 13: ed7f8d57dc submodule--helper update-clone: check for --filter and --initbase-commit: 715d08a9e51251ad8290b181b6ac3b9e1f9719d7