CodeBlanks Logo Icon CodeBlanks

Belirli dal

Belirli bir dalı arşivlemeyi öğrenirsin.

Dalları Arşivlemek

git archive varsayılan olarak yalnızca HEAD ile sınırlı değildir. Komutun sonuna arşivlemek istediğin dal adını yazarak o daldaki dosyaları paketleyebilirsin.

git archive -o ana-dal.tar main
git archive -o test.tar staging

Bulunduğun çalışma dalını değiştirmeden (switch yapmadan) herhangi bir dalın anlık görüntüsünü kolayca dışa aktarabilirsin.

Etiket ve Alt Dizin Arşivleme

Dal adlarının yanı sıra Git etiketleri (tag) veya commit referansları da verilebilir. Ayrıca deponun yalnızca belirli bir alt klasörünü dışa aktarmak da mümkündür.

git archive -o v1.0.tar v1.0.0
git archive -o belgeler.tar main docs/

Bu sayede büyük depolarda yalnızca dağıtılacak belgeleri veya kütüphane parçalarını izole bir paket haline getirebilirsin.

Uygulama Belirli Dalı Arşivle

Şu anda gelistirme dalındasın. Çalışma dalını değiştirmeden kararli dalını --output=kararli.tar kararli ile arşivle. Ardından tar -tf kararli.tar komutuyla içeriği listele.

Başlangıç kodu

terminal
git init -q
git config user.name "Dev"
git config user.email "dev@example.com"
echo "kararli surum" > kararli.txt
git add kararli.txt
git commit -q -m "Kararli commit"
git branch kararli

git checkout -q -b gelistirme
echo "yeni kod" > test.txt
git add test.txt
git commit -q -m "Gelistirme calismasi"

# Hedef dali arsivle ve listele:

Örnek çözüm

terminal
git init -q
git config user.name "Dev"
git config user.email "dev@example.com"
echo "kararli surum" > kararli.txt
git add kararli.txt
git commit -q -m "Kararli commit"
git branch kararli

git checkout -q -b gelistirme
echo "yeni kod" > test.txt
git add test.txt
git commit -q -m "Gelistirme calismasi"

git archive --output=kararli.tar kararli
tar -tf kararli.tar

Beklenen çıktı

kararli.txt

Soru ve cevaplar

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

1 Geliştirme dalındayken <code>main</code> dalını arşivlemek için ne yapılmalıdır?

  • Yalnızca HEAD arşivlenebilir, dal adı verilemez
  • git archive komutuna hedef referans olarak main yazılır Doğru cevap
  • Önce git checkout main yapıp sonra git clone çalıştırılır
  • Geliştirme dalı silinip tekrar klonlanır

Açıklama: `git archive` herhangi bir commit, etiket veya dal adını referans alabilir; dal değiştirmeye gerek kalmadan `git archive -o out.tar main` çalıştırılabilir.

2 v2 Dalını Arşivle

Soru
git archive --output=surum2.tar ____
Cevap
git archive --output=surum2.tar v2

Açıklama: Hedef dal adı doğrudan komutun sonuna referans argümanı olarak eklenir.

3 Referans Türleri

Kavram Anlamı
main Ana dalın anlık görüntüsü
v1.0.0 Etiketlenmiş sürümün arşivi
HEAD Bulunulan son commit referansı
main docs/ Belirli bir alt klasörü arşivler

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