What did you do before the bug happened? (Steps to reproduce your issue) # in a new directory, cd $(mktemp -d) # initialize a new repository git init # fetch a single commit from a remote git fetch --filter=tree:0 --depth=1 $REMOTE $COMMIT_OID # create a ref on that remote git push --no-verify $REMOTE $COMMIT_OID:$REFNAME What did you expect to happen? (Expected behavior) I expected this process to complete very, very quickly. We believe the version where it had been doing so was ~2.37. What happened instead? (Actual behavior) The fetch completes nearly instantly as expected. We receive ~200B from the remote for the commit object itself. What's truly bizarre is what happens during the push. It starts receiving objects from the remote! By the end of this process, the local repository is a whopping ~700MB -- though interestingly only about a tenth of the full repository size. This result in particular is strange in context. I would expect to either see 'almost all' the repository content, 'about half' (we have two trunks and fetching a single commit would at most fetch one of them), or 'virtual none at all'. There isn't a straightforward explanation for why 'one tenth' would make sense. What's different between what you expected and what actually happened? Why should git-push ever be fetching objects? This doesn't map well to my mental model of the relationship between push/fetch. I would expect the local repository to stay in that 'git init'+200B range. Anything else you want to add: Please review the rest of the bug report below. You can delete any lines you don't wish to share. I've truncated the system information normally included by git-bugreport as I am sending this email from a different machine. Versions of Git that can reproduce: - 2.39.2.windows.1 (Windows 10) git version: git version 2.39.2.windows.1 cpu: x86_64 built from commit: a82fa99b36ddfd643e61ed45e52abe314687df67 sizeof-long: 4 sizeof-size_t: 8 shell-path: /bin/sh feature: fsmonitor--daemon uname: Windows 10.0 19044 compiler info: gnuc: 12.2 libc info: no libc information available $SHELL (typically, interactive shell): C:\Program Files\Git\usr\bin\bash.exe - 2.31.1 (AIX UNIX 7.2) git version: git version 2.31.1 cpu: 00F905E64C00 no commit associated with this build sizeof-long: 8 sizeof-size_t: 8 shell-path: /opt/freeware/bin/bash uname: AIX 2 7 00FBC37A4C00 compiler info: gnuc: 8.3 libc info: no libc information available $SHELL (typically, interactive shell): /usr/bin/ksh -- Sean Allred