On Sv, 2015-08-23 at 17:13 -0600, Cox, Michael wrote: > You might want to take a look at how the Boost (boost.org) project > uses submodules. They use submodules for each library. I know they > use relative paths in their .gitmodules file to avoid the problem > you're referring to regarding "git clone --recurse-submodules". Thanks! I had a look at their setup, and they are using ../libx.git for submodules, which unfortunately breaks when cloning from another "working copy": $ git clone --recursive file:///tmp/gittest/repo.a/main.git main.work Cloning into 'main.work'... <snip> Submodule 'liba' (file:///tmp/gittest/repo.a/liba.git) registered for path 'liba' Cloning into 'liba'... <snip> Submodule path 'liba': checked out '6a0ef37c03a7068328956dcb8a08bc39f280edfc' $ git clone --recursive file://($pwd)/main.work main.home Cloning into 'main.home'... <snip> Submodule 'liba' (file:///tmp/gittest/work/liba.git) registered for path 'liba' Cloning into 'liba'... fatal: '/tmp/gittest/work/liba.git' does not appear to be a git repository fatal: Could not read from remote repository. Please make sure you have the correct access rights and the repository exists. Clone of 'file:///tmp/gittest/work/liba.git' into submodule path 'liba' failed After some trial and error I managed to get what I wanted to achieve by using ./liba as the submodule URL (no .git suffix!), and creating a file named liba in /tmp/gittest/repo.a/main.git (ie. the bare "origin" repo) with a single line in it: gitdir: ../liba.git However, I'm not sure it is the right thing, or even advisable to do so. -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html