diff options
author | Junio C Hamano <gitster@pobox.com> | 2022-05-26 02:42:49 +0300 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2022-05-26 02:42:49 +0300 |
commit | fa61b7703e7f19f172af3311af8dc04581ecdf69 (patch) | |
tree | 9e91f24c9ed5d36a496752f437ab729bfea5e8cc /t | |
parent | 5ed49a75f3a76731547e8322118a0bea1dd93676 (diff) | |
parent | 0353c6881890db1302f0f1bdf85c6076eed61113 (diff) |
Merge branch 'jc/avoid-redundant-submodule-fetch'
"git fetch --recurse-submodules" from multiple remotes (either from
a remote group, or "--all") used to make one extra "git fetch" in
the submodules, which has been corrected.
* jc/avoid-redundant-submodule-fetch:
fetch: do not run a redundant fetch from submodule
Diffstat (limited to 't')
-rwxr-xr-x | t/t5526-fetch-submodules.sh | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/t/t5526-fetch-submodules.sh b/t/t5526-fetch-submodules.sh index 43dada8544..a301b56db8 100755 --- a/t/t5526-fetch-submodules.sh +++ b/t/t5526-fetch-submodules.sh @@ -1125,4 +1125,31 @@ test_expect_success 'fetch --recurse-submodules updates name-conflicted, unpopul ) ' +test_expect_success 'fetch --all with --recurse-submodules' ' + test_when_finished "rm -fr src_clone" && + git clone --recurse-submodules src src_clone && + ( + cd src_clone && + git config submodule.recurse true && + git config fetch.parallel 0 && + git fetch --all 2>../fetch-log + ) && + grep "^Fetching submodule sub$" fetch-log >fetch-subs && + test_line_count = 1 fetch-subs +' + +test_expect_success 'fetch --all with --recurse-submodules with multiple' ' + test_when_finished "rm -fr src_clone" && + git clone --recurse-submodules src src_clone && + ( + cd src_clone && + git remote add secondary ../src && + git config submodule.recurse true && + git config fetch.parallel 0 && + git fetch --all 2>../fetch-log + ) && + grep "Fetching submodule sub" fetch-log >fetch-subs && + test_line_count = 2 fetch-subs +' + test_done |