Hem "stash" hem de "snapshot" varyantları aynı stash nesnelerini oluşturur. Fark Bir anlık görüntüyü oluştururken, daha sonra saklanmış değişiklikler olmasıdır değil çalışan ağacın ve / veya dizindeki dosyaları kaldırılır. (Tıpkı iyi vakit geçiren arkadaşlarınızın anlık görüntüsünü aldığınızda olduğu gibi - bu onların da kaybolmasına neden olmaz ;-)
Bu, bir çeşit yedekleme mekanizması olarak tasarlanmıştır. Diyelim ki bazı karmaşık yeniden düzenleme işlemleri yapıyorsunuz ve test ettiniz ve değiştirilmiş kod hala çalışıyor gibi görünüyor, ancak henüz işiniz bitmedi. Şimdi bir anlık görüntü oluşturmak için iyi bir zaman olacaktır, böylece daha sonra karıştırırsanız geri dönecek bir şeyiniz olur.
Elbette, sadece üzerinde çalıştığınız dalda, bunu gerçekleştirmek için geçici bir "silme" taahhüdü oluşturabilirsiniz. Genellikle bunu yaparım.
Ayrıca, Wip modlarını etkinleştirerek devam eden çalışmaların kaydını otomatik hale getirebilirsiniz . Bir güvenlik ağı olarak bu modları etkinleştirdim, ancak yine de doğrudan geçerli dalda wip taahhütleri oluşturuyorum veya bir anlık görüntü oluşturuyorum. Bunlarla çalışmak, silme referanslarından daha kolaydır.
Magit, Elisp'te yazılmış kendi özel uygulama ile geliyor. Bu, anlık görüntü varyantlarını ve yalnızca çalışma ve yalnızca dizin içeren stash varyantlarını uygulamak için gerekliydi. Git bu varyantlardan hiçbirini sağlamaz.
stash
da değişiklikleri sıfırlayacak (geri alacak) ve değişikliklerisnapshot
çalışma alanında bırakacak (itmeden önce taahhütleri yeniden düzenleyecekseniz yararlı olabilir).