Az önce 2.1.0 seviyesine yükselttim. (Ayrıca 25.0.50 ve git 2.3.1'e kadar emacs için)
Önceden, *magit*
tamponda şunu yapabilirdim:
- Dengesiz alanda bir iri parça seçin.
- Yazın vve Cevap evet bunu tersine çevirmek için.
Bu kullanışlıydı.
Ama şimdi magit 2.1.0 o hata veriyor: "Cannot reverse unstaged changes"
.
Niye ya?
Hata mesajından bir ipucu alarak, daha fazla adımda biraz "geriye" şekilde de olsa, bunu hala yapabileceğimi öğrendim:
- siri parçalamak. (Geri hissediyor; kararlı duruma yaklaştırıyor.)
- Aşağı gidin ve Staged alanında seçin.
- Bas v, evet cevapla.
- Ancak iri hala Kademeli, bu yüzden nihayet uiriyi yerleştirmem gerekiyor.
Bu bir hata mı, yoksa kasıtlı mı ve / veya yoğun muyum? İkincisi, anlamama yardımcı olabilir misiniz?
GÜNCELLEME: RTF bilgilerinden sonra iyice iki komut olduğunu görüyorum:
- v
magit-reverse
Çalışan ağaçtaki noktadaki değişikliği tersine çevirin. - k
magit-discard
Çalışan ağaçtaki noktada değişikliği kaldırın.
Görünüşe göre k magit-discard
daha vönce yapmaya alıştığım şeyi yapıyor. Bu dengesiz bir iri üzerinde çalışır.
Bu yüzden pratik olarak sadece kas hafızamı kullanmak için tekrar denemek gerekiyor k. Bunu bir cevap olarak gönderebilirim. Ama sanırım hala mantığı merak ediyorum, çünkü bunun genel olarak daha iyi anlamayı öğrenmeme yardımcı olacağını hayal ediyorum.
k
magit'in önceki sürümlerinde kabul edilmemiş bir değişikliği atar ve yaptığınız şey için uygun komutu verir. v
git revert içindir: öncekinin tersi değişikliğini yapan yeni bir taahhüt oluşturmak . Sanırım gerçekten taahhüt edilmemiş bir değişikliği geri almak, onu silmekle aynı, ancak 'geri almak', git komutu olarak özel bir anlama sahip.
v
bağlandı magit-revert-item
ve unstaged öğeler için bu yapmak için kullanılan (terminoloji var, @PythonNut gelen "ters") magit-discard-item
(aynı zamanda bağlı k
hattını 4872 bakınız -) burada . Anlaşılan v
, kullanmayı öğrendiğimde, işe yarayan özel anlamının yanlışlıkla olduğunu öğrendim k
.