olarak bildiğim kadarıyla, bir alt modülü başvurulan tek link vardır:
$ cat .gitmodules
[submodule "a"]
path = a
url = /home/moses/subtut/public/a/.git
[submodule "b"]
path = b
url = /home/moses/subtut/public/b/.git
- ve
.git
dizinin config alt modül
Anlamı Bu url azalmışsa, bu iki konumda değişmiş olabilir, ancak bu işlemi test etmedim. docs göre Gattster
git submodule sync.
den
İyi yorumlar:
.gitmodules belirtilen değere ayarlanması submodules' uzaktan URL yapılandırmayı eşitler.
Alt modül URL'leri akış yukarı yönde değiştiğinde ve yerel depolarınızı buna göre güncellemeniz gerektiğinde bu özellik yararlıdır. "git submodule sync -- A
" sadece alt modülü "A" eşitler ise
- "
git submodule sync
" Tüm submodules
- eşitler.
O.gitmodule
daha iyi (yani, bir dal) izolasyon yapılan bu yeni URL/onaylanmış yayınlanabilir kadar olabilir modifiye bahsedilen edilir.
URL'nin değiştirilmesiyle ilgili sorun, ana depoda, .gitmodules'un da aynı zamanda tahakkuk ettirileceğidir ve bu URL'ler ana depoyu klonlayan herkes için çalışmayabilir. Yerel bir şube üzerinde çalışmayı düşündüğümde, master'dan tek farkın .gitmodules farklı URL'leri olmasıdır. Çirkin, ama işe yarayacak: -/ – Silas
Sanırım 'git submodule sync 'komutunu çalıştırabilirsiniz. Dokümanlara göre, bu "altmodüllerin uzak URL yapılandırma ayarını .gitmodules'de belirtilen değere eşitler. Bu, alt modül URL'leri akış yukarı yönde değiştiğinde ve yerel depolarınızı buna göre güncellemeniz gerektiğinde kullanışlıdır." – Gattster
@qris, bana http://stackoverflow.com/questions/12078365/how-exactly-does-git-submodule-work/12078816#12078816 adresini hatırlatır: 'git altmodule güncellemesi 'de tehlikelidir. – VonC