Git 2.25 (Q1 2020) ile değiştirebilirsiniz .
" Git alt modül URL'si değişti " ve yeni komut
git submodule set-url [--] <path> <newurl>
Orijinal cevap (Mayıs 2009, on yıl önce)
Aslında, rolün açıklığa kavuşturulması için Nisan 2009'da bir yama sunulmuşturgitmodule
.
Şimdi gitmodule belgeleri henüz içermiyor:
.gitmodules
Git-yapılandırma: bir git çalışan ağacın en üst düzey dizinde yer alan dosya, gereksinimleri -of linkgit uyan bir söz dizimi ile bir metin dosyası 1 .
[YENİ]:
Bu dosya Git tarafından yönetildiği için, bir projenin alt modüllerinin + kayıtlarını izler.
Bu dosyada saklanan bilgiler, proje yapılandırma dosyasında saklanan kaydın yetkili sürümünün hazırlanması için bir ipucu olarak kullanılır.
Konfigürasyon dosyasına kullanıcıya özel kayıt değişiklikleri (örn. Alt modül URL'lerindeki farklılıkları hesaba katmak için) yapılandırma dosyasına, dosyaya kaydedilecek kayıt değişiklikleri (örn. Alt modül kaynağının yer değiştirmesi nedeniyle +) yapılmalıdır. .
Bu Jim'in cevabını hemen hemen doğrular .
Bu git alt modül eğitimini izlerseniz git submodule init
, alt modül veri havuzu URL'lerini .git / config dosyasına eklemek için " " gerektiğini görürsünüz .
URL değiştiğinde (özellikle alt modüllerin sayısı önemliyse) bu görevi kolaylaştırmak için Ağustos 2008'de " git submodule sync
" eklendi .
Bu komutla ilişkilendirilmiş komut dosyası yeterince basittir:
module_list "$@" |
while read mode sha1 stage path
do
name=$(module_name "$path")
url=$(git config -f .gitmodules --get submodule."$name".url)
if test -e "$path"/.git
then
(
unset GIT_DIR
cd "$path"
remote=$(get_default_remote)
say "Synchronizing submodule url for '$name'"
git config remote."$remote".url "$url"
)
fi
done
Hedef kalıyor: git config remote."$remote".url "$url"
git submodule set-url [--] <path> <newurl>