Depo klonlandığında Git alt modül klasörünü boşalt


130

Https://github.com/aikiframework/json adresinde barındırılan bir depom var . Yerel kopyamda, şu komutu kullanarak bir alt modül ekledim

git submodule add git@github.com:jcubic/json-rpc.git json-rpc

Sonra bir commit ve push yaptım ve değişiklikler GitHub'da belirdi (üzerine tıklayabilirim). Ama depoyu klonladığımda

git clone https://github.com/aikiframework/json.git

alt modül klasörü json-rpc boş.

Burada neyi özlüyorum? Bir şeyi unuttum mu? Bu klasör neden boş?

Yanıtlar:


201

Tamam buldum, --recursivedepoyu klonlarken eklemem gerekiyor .

Yani klonlama komutu şu şekilde biter:

git clone https://github.com/aikiframework/json.git --recursive

229
Evet. git submodule update --initZaten klonladıysanız ancak unuttuysanız, alt modülleri de ile getirebilirsiniz --recursive.
Amber

4
Geliştirme dalında bir alt modül olması, ancak henüz ana dalda olmaması sorunuyla karşılaştım. Git repo'yu --recursive kullanarak klonladığınızda, alt modülü ana dalda bulamaz ve alt modülü de almak için Ambers yorumunu "git submodule update --init" kullanarak getirmeniz gerekir.
d4Rk

11
Eğer kullanırsanız git submodule update --inither repoya gitmek zorunda kalacak ve yapılacak git checkout masteraksi takdirde hatayı alırsınız You are not currently on a branch.üzerinde git pulldaha yeni bir sürüme güncellemek çalıştığınızda.
Noitidart

@Noitidart bunu yapmamanın bir yolu var mı? (projeyi zaten
klonladıktan

1
@Noitidart update --initİpucu için teşekkürler . Bu, orijinal klonun --recursiveiçinde olmadığında ve sadece eksik alt modülleri çekmek istediğinde yardımcı olur .
Jari Turkia
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.