From: Junio C Hamano Date: Sat, 24 Jan 2026 02:18:25 GMT Subject: Re: [PATCH v3] submodule: fetch missing objects from default remote Message-ID: In-Reply-To: Junio C Hamano writes: > Nasser Grainawi writes: > >> diff --git a/t/t5572-pull-submodule.sh b/t/t5572-pull-submodule.sh >> index 45f384dd32..faafe31409 100755 >> --- a/t/t5572-pull-submodule.sh >> +++ b/t/t5572-pull-submodule.sh >> @@ -257,7 +257,26 @@ test_expect_success 'fetch submodule remote of different name from superproject' >> git -C a-submodule reset --hard HEAD^^ && >> >> git -C child pull --no-recurse-submodules && >> - git -C child submodule update >> + git -C child submodule update && >> + test_path_is_file child/a-submodule/moreecho.t >> +' >> + >> +test_expect_success 'fetch submodule remote of different non-origin name from superproject' ' >> + git -C child/a-submodule remote rename origin o2 && >> + >> + # Create commit that is unreachable from current master branch >> + git -C a-submodule checkout -b newmain2 master^ && > > This test assumes that the first branch created by default is > 'master', which will break in one of the CI jobs: > > https://github.com/git/git/actions/runs/21304166518/job/61328461844#step:9:1942 For now, I've queued two fix-up patches on top of the posted patch to avoid CI breakages when the topic is merged to 'seen'. One is to rename t7425-submodule-get-default-remote.sh to t7426-submodule-get-default-remote.sh (both filename and the reference to it in t/meson.build), and the other one is the following. ----- >8 ----- Subject: [PATCH] SQUASH??? fixup The test as posted breaks when run with $ make WITH_BREAKING_CHANGES=YesPlease test as the added part assumes that the default branch name is "master". This band-aid is sufficient for the purpose of the maintainer to get the CI passing, but the real solution should probably be done better in such a way that the latter step does not have to rely on the creation of "anchorpoint" in the previous step. I'll leave it to the contributor of the topic. --- t/t5572-pull-submodule.sh | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/t/t5572-pull-submodule.sh b/t/t5572-pull-submodule.sh index faafe31409..dfc07d050b 100755 --- a/t/t5572-pull-submodule.sh +++ b/t/t5572-pull-submodule.sh @@ -246,7 +246,8 @@ test_expect_success 'fetch submodule remote of different name from superproject' git -C child submodule update --init && # Needs to create unreachable commit from current master branch. - git -C a-submodule checkout -b newmain HEAD^ && + git -C a-submodule tag anchorpoint HEAD && + git -C a-submodule checkout -b newmain anchorpoint^ && test_commit -C a-submodule echo && test_commit -C a-submodule moreecho && subc=$(git -C a-submodule rev-parse --short HEAD) && @@ -265,7 +266,7 @@ test_expect_success 'fetch submodule remote of different non-origin name from su git -C child/a-submodule remote rename origin o2 && # Create commit that is unreachable from current master branch - git -C a-submodule checkout -b newmain2 master^ && + git -C a-submodule checkout -b newmain2 anchorpoint^ && test_commit -C a-submodule echo_o2 && test_commit -C a-submodule moreecho_o2 && subc=$(git -C a-submodule rev-parse --short HEAD) && -- 2.53.0-rc1-193-g609e9a7b29