Cloning a git repo with all submodules

Claudio picture Claudio · Aug 8, 2014 · Viewed 12.6k times · Source

I have a working git repository containing several submodules (obtained by cloning different repositories).

Now, I want to copy the whole repository (with all the submodules) to a bare git repo on a different machine by either using pushing or cloning. I'm fine loosing the history of the submodules (I'm just interested in keeping their content).

Is this possible ? In my attempts, in the cloned repository the submodule directory is empty.

P.S. I know that this is not the correct workflow (see creating a public repo with submodules), however there is no possibility of updating the original submodule.

Answer

user3524542 picture user3524542 · Aug 8, 2014

You can clone the git repo with all submodule using recursive as follow:

git clone --recursive your-repo-url

on the other hand if you have already cloned, you can use:

git submodule init
git submodule update

You won't lose any history in your submodule