Thank you for filling out a Git bug report! Please answer the following questions to help us understand your issue. What did you do before the bug happened? (Steps to reproduce your issue) git pull/push subtree as normal, although it is possible that one of the contributors to the subtree repo may have done a force push. What did you expect to happen? (Expected behavior) git push subtree to update the remote subtree repo. What happened instead? (Actual behavior) Failed to update the remote subtree repo. Error message: fatal: ambiguous argument '3f44cc87ceb87df1d9171096596a824fc3050a27^{commit}': unknown revision or path not in the working tree. Use '--' to separate paths from revisions, like this: 'git <command> [<revision>...] -- [<file>...]' could not rev-parse split hash 3f44cc87ceb87df1d9171096596a824fc3050a27 from commit 8577911bf6183497cc246aa620e7be1b6becec29 What's different between what you expected and what actually happened? Failed to update the subtree repo, as expected; Anything else you want to add: I am not able to find the commit/hash 3f44cc87ceb87df1d9171096596a824fc3050a27 in the repo. In gitx, I can see that the commit is a git-subtree-split. But it appears to no longer exist in the repo. How can I bypass or recover from this apparent missing commit? Any help would be greatly appreciated. Please review the rest of the bug report below. You can delete any lines you don't wish to share. [System Info] git version: git version 2.33.0 cpu: x86_64 no commit associated with this build sizeof-long: 8 sizeof-size_t: 8 shell-path: /bin/sh uname: Darwin 19.6.0 Darwin Kernel Version 19.6.0: Tue Jun 22 19:49:55 PDT 2021; root:xnu-6153.141.35~1/RELEASE_X86_64 x86_64 compiler info: clang: 12.0.0 (clang-1200.0.32.29) libc info: no libc information available $SHELL (typically, interactive shell): /bin/bash [Enabled Hooks]