Stashing memungkinkan Anda menyimpan salinan perubahan yang Anda buat ke repositori, tanpa harus membuat komit.

Ini berguna jika Anda beralih konteks, terutama jika Anda bolak-balik antara bug atau tugas yang berbeda pada proyek yang sama.

Operasi Dasar git stash

Kamu bisa gunakan git stash untuk memudahkan alur kerja Anda ketika berhadapan dengan garis kerja paralel. Bayangkan Anda sedang mengerjakan tugas yang sudah berjalan lama, dengan perubahan pada copy pekerjaan lokal Anda. Kemudian, sesuatu yang mendesak muncul yang harus Anda kerjakan segera.

Alur kerja standar untuk menyimpan perubahan adalah:

  1. Buat perubahan lokal
  2. Simpan perubahan lokal
  3. Terapkan kembali perubahan yang disimpan

Saat Anda menyimpan perubahan menggunakan git simpanan [dorong] perintah, git me-reset ke HEAD. Anda kemudian dapat melanjutkan mengerjakan apa pun yang Anda perlukan, berkomitmen ke repositori seolah-olah Anda tidak pernah membuat perubahan asli.

Setelah Anda selesai dengan apa pun yang melacak Anda sejak awal, gunakan

git simpanan pop untuk menerapkan perubahan Anda dan menghapusnya dari simpanan. Anda juga dapat menerapkan perubahan Anda dan menyimpannya di simpanan dengan git simpanan berlaku. Ini mungkin berguna jika Anda ingin menerapkan perubahan dengan cepat ke banyak cabang.

Bekerja Dengan Lebih dari Satu Simpanan

Jika Anda benar-benar sibuk, Anda mungkin mendapati diri Anda mengerjakan beberapa tugas sekaligus, dan Anda mungkin perlu menyimpan semuanya. Jangan khawatir, git stash dibuat untuk ini.

Setiap kali Anda menggunakan git stash push, Anda menyimpan serangkaian perubahan lainnya. Menggunakan daftar simpanan git untuk menunjukkan semua yang Anda sembunyikan. Anda akan melihat sesuatu seperti ini:

stash@{0}: WIP di main: 2fba62e komit pertama
stash@{1}: WIP di main: 2fba62e komit pertama

Pesan-pesan ini tidak terlalu berguna, tetapi Anda dapat meninggalkan beberapa petunjuk untuk diri Anda sendiri dengan menambahkan pesan khusus saat Anda menyimpannya:

git stash Push -m "ketiga"

Saat Anda mendaftar sekarang, Anda akan melihat pesan khusus Anda:

simpanan@{0}: Di utama: ketiga
stash@{1}: WIP di main: 2fba62e komit pertama

Menampilkan Perbedaan Antara Perbedaan

Untuk mengetahui apa yang berubah dalam simpanan, gunakan pertunjukan simpanan git. Tanpa argumen lebih lanjut, itu akan menampilkan ringkasan diff untuk simpanan terbaru, terlihat seperti ini:

$ git simpanan acara
README.md | 3 +++
1 file diubah, 3 sisipan(+)

Anda juga dapat memberikan id simpanan untuk meminta entri tertentu:

git simpanan tampilkan simpanan@{0}

Membuat Cabang Dari Stash

Anda mungkin memutuskan bahwa perubahan dalam simpanan begitu signifikan sehingga mereka layak berada di cabang mereka sendiri. Jika begitu, buat cabang baru dari simpanan menggunakan cabang memerintah:

git simpanan cabang

Sekali lagi, ini akan bekerja pada simpanan terbaru secara default, tetapi Anda dapat memberikan id simpanan jika perlu. Git membuat cabang baru Anda dari titik yang sama di repositori sebagai simpanan. Ini kemudian menerapkan perubahan dari simpanan ke copy pekerjaan Anda.

Membersihkan Tumpukan

Tidak ada perintah "git unstash". Jika Anda ingin menghapus entri simpanan, gunakan drop:

git simpanan menjatuhkan

Sekali lagi, ini default ke yang terbaru tetapi Anda dapat menyediakan id simpanan sebagai gantinya. Jika Anda memutuskan ingin menghapus semua yang Anda sembunyikan, gunakan perintah ini:

git simpanan jelas

Gunakan git stash untuk Komitmen Ringan Sementara

Git stashes sama sekali tidak sekuat repositori penuh. Tetapi mereka masih menawarkan banyak fungsi yang berguna dalam hak mereka sendiri. Gunakan simpanan jika Anda sering merasa perlu berpindah cabang di tengah pekerjaan.

Menyimpan hanyalah salah satu bagian kecil dari git, yang merupakan program dengan banyak sekali penawaran.