Belirli dal
- Git kursu
- İleri seviye
- Ders 31/56
- 4 dk
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 stagingBulunduğ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
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
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.tarBeklenen çı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
git archive --output=surum2.tar ____
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 |