git zula ve git çekme


92

Git'te yeniyim ve işlemek için EGit eclipse eklentisini kullanıyorum.

Birkaç dosyayı değiştirdim ve değişiklikleri sakladım, sonra git pullen son işlemlerin tümünü gösteren komut satırında yaptım . Sonra Apply stashed changesEGit'ten yaptım . Şimdi değişikliklerimi uyguladı ve saklanan dosyaların son işlemesinden gelen değişiklikler çıktı. Neden bana birleştirme çatışmalarını sormadığından ve değişikliklerimin üzerine yazdığından ve önceki taahhüt değişikliklerini kaybettiğinden emin değilim.

Bu değişiklikler nasıl elde edilir?


Mantıklı gelmiyor. Stash uygulaması, ya çatışmasız değişiklikler getirir ya da birleştirme çakışmalarına neden olur. Sanırım bir şey söylemeyi unuttun. Ayrıca, adımlarınızı tekrarlayabilirsiniz, büyük olasılıkla zulanız hala listede, git stash listgöstermek için kullanın .
kan

Yanıtlar:


215

Çalışma kopyanızda değişiklikler olduğunda, komut satırından şunları yapın:

git stash 

Bu, değişikliklerinizi saklayacak ve durum raporunuzu temizleyecektir

git pull

Bu, değişiklikleri yukarı akış dalından çekecektir. Raporda ileri sar yazdığından emin olun. Olmazsa, muhtemelen istenmeyen bir birleştirme yapıyorsunuzdur

git stash pop

Bu, saklanan değişiklikleri çalışma kopyasına geri uygulayacak ve çakışmalarınız yoksa değişiklikleri zuladan kaldıracaktır. Çatışma durumunda, gerektiğinde yeniden başlayabilmeniz için saklanırlar.

Zulanda ne olduğunu görmen gerekiyorsa

git stash list

@java_newbie, Bunu zula ile yapmak ve hayır çekmek istiyorsanız, yolu yoktur. Ancak rebase ile aynı sonucu elde edebilirsiniz. 'Git rebase origin / <upstream branch name>' komutu aynı şeyi yapmalıdır.
yilmazhuseyin

5
Bunun işe yarayacağını düşünüyorum:git stash && git pull && git stash pop
Fabrice Kabongo

@yilmazhuseyin 'Aynı sonuç' ile neyi kastediyorsunuz Yapabiliyorsanız bir fıkra verebilir misiniz? git rebase origin/masterAynı sonucu üretecek mi demek istediniz git stash; git pull; git stash pop?
nehem

9
Git v2.9.0 veya sonraki bir sürümünü kullanıyorsanız, deneyin git pull --rebase --autostash. Bilginize
momocow

1
Her --autostashzaman çalışır mı? Örneğin, kısmen Git'te bulunan izlenmemiş dosyalarım varsa?
qräbnö
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.