Allow for git clone --recurse-submodules for GitSource
Downsite opened this issue · 3 comments
Downsite commented
Because of caching, if one tries to clone a repository that makes use of relative paths in .gitmodules, git submodule update
will fail. That is because the repository url is changed automatically.
$ git submodule init
Submodule 'dep/mydep' (/home/user/.julia/packages/BinaryBuilderBase/hosj0/deps/downloads/public/mydep.git) registered for path 'dep/mydep'
$ git submodule update
fatal: repository '/home/user/.julia/packages/BinaryBuilderBase/hosj0/deps/downloads/public/mydep.git' does not exist
fatal: clone of '/home/user/.julia/packages/BinaryBuilderBase/hosj0/deps/downloads/public/mydep.git' into submodule path '/workspace/srcdir/myproj/dep/mydep' failed'
An option to allow to add flags to git clone would help here.
giordano commented
We don't use git
for cloning but libgit2, which as far as I understand doesn't allow managing submodules.
Downsite commented
A (diry?) workaround is to use git remote set-url origin
in the build script.
giordano commented
We don't use git for cloning but libgit2, which as far as I understand doesn't allow managing submodules.
To be clearer, I think it's the julia's LibGit2.jl standard library which doesn't expose the submodules management, which is present in libgit2