CodeBlanks Logo Icon CodeBlanks

Submodule

alt modül ekleyip güncelleme akışını tamamlarsın.

Git submodule nedir?

Submodule, bir Git deposunu başka bir deponun içinde ayrı bir depo olarak kullanmanı sağlar. Ana depo, alt modülün dosyalarını doğrudan kendi commit geçmişine katmak yerine belirli bir commit referansını takip eder. Bu yöntem ortak kütüphaneleri veya bağımsız geliştirilen bileşenleri projeye dahil etmek için kullanılır.

git submodule add https://example.com/library.git libs/library

Alt modülün adresi ve takip edilen commit bilgisi ana depoda kaydedilir.

Uygulama Depoya alt modül ekle

https://example.com/shared.git adresindeki depoyu libs/shared dizinine alt modül olarak ekle. Komutu çalıştırdıktan sonra Git, alt modül kaydını ve .gitmodules dosyasını oluşturur.

Başlangıç kodu

terminal
# Paylaşılan depoyu alt modül olarak ekle

Beklenen çıktı

Alt modül libs/shared dizinine eklendi.

Uygulama Alt modülleri başlat ve güncelle

Başka bir bilgisayarda ana depoyu klonladığını varsay. Depoda kayıtlı tüm alt modülleri başlat ve ana deponun işaret ettiği commit sürümlerine güncelle. İç içe alt modülleri de işleme dahil et.

Başlangıç kodu

terminal
# Tüm alt modülleri başlat ve güncelle

Beklenen çıktı

Tüm alt modüller başlatıldı ve güncellendi.

Soru ve cevaplar

Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.

1 Bir projeye başka bir Git deposunu ayrı depo olarak eklemek için hangi komut kullanılır?

  • git submodule remove
  • git branch add
  • git remote delete
  • git submodule add Doğru cevap

Açıklama: <code>git submodule add</code>, belirtilen depoyu ana projeye alt modül olarak ekler.

2 Alt modülü başlat ve güncelle

Soru
git submodule update --init --recursive____
Cevap
git submodule update --init --recursiveupdate --init

Açıklama: <code>git submodule update --init</code>, henüz başlatılmamış alt modülleri hazırlar ve ana depoda kayıtlı commit sürümünü getirir.

3 Submodule komutları

Kavram Anlamı
submodule add Yeni alt modül ekler
update --init Alt modülü başlatıp günceller
--recursive İç içe alt modülleri de işler
.gitmodules Alt modül adreslerini saklar

İleri seviye bölümündeki tüm dersler