Kaartic Sivaraam <kaartic.sivaraam@xxxxxxxxx> writes: >> Also please try >> "git fetch" again with GIT_TRACE=1 and GIT_TRACE_SETUP=1. Hopefully we >> could catch something with that. > > $ GIT_TRACE_SETUP=1 GIT_TRACE=1 git fetch origin next > 23:10:26.049785 trace.c:377 setup: git_dir: $COMMON_ROOT/git/.git/worktrees/git-next-build-automate > ... > 23:10:28.402815 git.c:415 trace: built-in: git rev-list --objects --stdin --not --all --quiet > From https://github.com/git/git > * branch next -> FETCH_HEAD > 23:10:28.437350 run-command.c:1553 run_processes_parallel: preparing to run up to 1 tasks > ... That looks like fetching only the 'next' branch and nothing else to me. Perhaps your script is referring to a variable whose assignment is misspelled and invoking git fetch $origin $branch and you are expecting the $branch variable to have string 'next' but due to some bugs it is empty somehow? That explains why sometimes (i.e. when $branch does not get the value you expect it to have) the script fetches everything and some other times (i.e. when $branch does get the right value) the script fetches only the named branch.