pop vs apply
- Git kursu
- Orta seviye
- Ders 19/82
- 4 dk
stash pop ile stash apply arasındaki farkı öğrenirsin.
Stash'i geri yükleme: pop ve apply
Sakladığın değişiklikleri geri yüklemek için iki temel komut bulunur: git stash pop ve git stash apply. git stash pop, en üstteki stash'i çalışma alanına geri yükler ve işlem başarılı olursa kaydı yığından siler. git stash apply ise değişiklikleri uygular ancak kaydı yığında saklamaya devam eder.
# Uygula ve yigindan kaldir:
git stash pop
# Uygula ama yiginda tut:
git stash applyAynı değişikliği birden fazla dala uygulamak istiyorsan apply seçeneği idealdir.
Kayıtları temizleme: drop ve clear
apply kullandıktan sonra veya artık ihtiyaç kalmayan bir stash'i silmek için git stash drop komutu kullanılır. Belirli bir kaydı silmek için indeks verebilirsin: git stash drop stash@{1}. Yığındaki bütün stash kayıtlarını tek seferde tamamen silmek istersen git stash clear komutunu çalıştırırsın.
git stash drop stash@{0}
git stash clearTemizlik komutları geri alınamaz, bu yüzden önemli değişiklikleri önceden uyguladığından emin olmalısın.
Uygulama Stash'i pop ile geri yükle
Yığındaki stash kaydını git stash pop -q ile geri yükle ve ardından cat metin.txt ile dosyanın güncel halini ekrana yazdır.
Başlangıç kodu
git init -q -b main
git config user.name "Leyla"
git config user.email "leyla@example.com"
echo "orijinal" > metin.txt
git add metin.txt
git commit -qm "Ilk metin"
echo "eklenen satir" >> metin.txt
git stash push -qm "metin guncelleme"
# Stash'i pop ile uygula ve dosya icerigini yazdirÖrnek çözüm
git init -q -b main
git config user.name "Leyla"
git config user.email "leyla@example.com"
echo "orijinal" > metin.txt
git add metin.txt
git commit -qm "Ilk metin"
echo "eklenen satir" >> metin.txt
git stash push -qm "metin guncelleme"
git stash pop -q
cat metin.txtBeklenen çıktı
orijinal eklenen satir
Soru ve cevaplar
Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.
1 git stash apply komutunun git stash pop komutundan temel farkı nedir?
- apply kaydı yığından silmez, pop ise uyguladıktan sonra siler Doğru cevap
- apply değişiklikleri doğrudan commit eder, pop commit etmez
- apply tüm dallardaki stash kayıtlarını aynı anda siler
- apply yalnızca takip edilmeyen yeni dosyaları geri yükler
Açıklama: git stash apply değişiklikleri çalışma alanına geri yüklerken kaydı yığında tutar; pop ise uyguladıktan sonra yığından temizler.
2 Stash kaydını yığından sil
git stash ____ stash@{0}
git stash drop stash@{0}
Açıklama: git stash drop komutu, belirtilen stash kaydını yığından kalıcı olarak siler.
3 Geri yükleme ve silme
| Kavram | Anlamı |
|---|---|
git stash pop |
Uygular ve kaydı yığından siler |
git stash apply |
Uygular ama kaydı yığında tutar |
git stash drop |
Belirtilen stash kaydını siler |
git stash clear |
Tüm stash yığınını temizler |