Es scheint, dass, wenn Projekt A Submodule mit Remote-URLs hat, git clone --recursive A B
darauf besteht, Kopien von jedem Submodul-Repository von der Remote-URL abzurufen. Gibt es eine Möglichkeit, git dazu zu bringen, die Submodul-Repositories von den Kopien in A zu klonen, anstatt aus den Remote-Repositories zu ziehen?Wie bekomme ich Git-Klon --recursive A B, um die Submodul Repositories in A zu verwenden?
Ich nehme ich so etwas tun könnte:
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 ..
Gibt es einen einfacheren Weg?
Ja, das ist toll, aber es auch in dem Repository lokale Änderungen kopiert, wenn die A-Repository ist verschmutzt. Aber ja, wenn A sauber ist, sieht das nach einer guten Lösung aus. –