Varian "simpanan" dan "foto" membuat objek simpanan yang sama. Perbedaannya adalah bahwa ketika Anda membuat snapshot, maka perubahan simpanan tidak dihapus dari file di pohon kerja dan / atau indeks. (Sama seperti ketika Anda mengambil snapshot dari teman-teman Anda bersenang-senang - itu tidak menyebabkan mereka menghilang juga ;-)
Ini dimaksudkan sebagai semacam mekanisme cadangan. Katakanlah Anda sedang melakukan beberapa refactoring yang rumit dan Anda baru saja menguji dan kode yang dimodifikasi masih tampak berfungsi tetapi Anda belum selesai. Sekarang akan menjadi saat yang tepat untuk membuat snapshot, sehingga Anda memiliki sesuatu untuk kembali jika Anda mengacaukannya nanti.
Tentu saja Anda bisa membuat komit "wip" sementara, tepat di cabang yang sedang Anda kerjakan, untuk mencapai hal yang sama. Biasanya itu yang saya lakukan.
Dan Anda juga dapat mengotomatiskan proses perekaman sedang berlangsung dengan mengaktifkan mode Wip . Saya memang memiliki mode ini diaktifkan sebagai jaring pengaman, tapi saya masih membuat wip melakukan langsung pada cabang saat ini atau membuat snapshot. Itu lebih mudah untuk dikerjakan daripada wasit wip
Perhatikan bahwa Magit hadir dengan implementasi simpanan tersendiri yang ditulis dalam Elisp. Itu diperlukan untuk mengimplementasikan varian snapshot dan varian simpanan hanya-kerja dan indeks-saja. Git tidak menyediakan varian ini.
stash
juga akan mengatur ulang (membatalkan) perubahan dansnapshot
akan meninggalkan perubahan di ruang kerja (bisa berguna jika Anda akan mengatur ulang komit sebelum mendorong).