I've got a problem with git submodules pull: I have two reporistories, let's call them repo A and repo B.
Repo B is a submodule of repo A, so I added repo B as a submodule of A with this command line:
git submodule add [email protected]:Aracthor/B.git libvvgl
But when I try to clone my project like this:
git clone [email protected]:Aracthor/A.git
My B project folder is empty and when I try this (solution from this answer):
git clone --recursive [email protected]:Aracthor/A.git
My B folder contains only an empty file .git
, that contains itself an only line:
../.git/modules/B/
That is a path to a folder with some git data, but still not my B repository files.
I already tried this too:
git submodule update --init --recursive
And nothing changes.
When I Looked at my Github repositories (Here for A and Here for B included) I've noticed something strange: A repository is linking its submodule to a revision key (32a0a80f17ee3628cb99b886c68e566981d7deff) that doesn't exist on any commit on B repository, and that lead to a 404 when clicked on Github.
So from here, it looks like a Github bug... But I would prefer your solutions rather than accuse this plateform.
That means A has recorded a gitlink (special entry in the index) referencing a SHA1 of the submodule
B
which was never pushed to GitHub.When
A
usedB
in a local clone,B
was at32a0a80
.A
was pushed, butB
was not. Hence the issue.Normally, a
git submodule update --init
would populateB
with files from commit32a0a80
, but since that commit was not pushed, that command would fail as well.