似乎如果项目A有远程URL的子模块,那么“git clone --recursive A B”命令将强制从远程URL拉取每个子模块的副本。有没有一种方法可以让Git从A中的副本克隆子模块而不是从远程存储库中拉取?
我想我可以做类似以下的操作:
有没有更简单的方法?
我想我可以做类似以下的操作:
git clone A B
cd A
git submodule --quiet foreach 'echo [submodule \"$path\"]\\n path = $path\\n url = $toplevel/$path ' > ../B/.gitmodules
cd ../B
git submodule sync
git submodule update --init --recursive
git checkout .gitmodules
cd ..
有没有更简单的方法?