Sebagai perangkat lunak untuk kontrol versi, Git membuatnya mudah untuk mengembalikan perubahan. Tetapi bahkan konsep membatalkan perubahan lebih rumit daripada yang mungkin Anda pikirkan. Repositori Git tidak persis sama dengan kumpulan file yang sedang Anda kerjakan secara lokal. Membatalkan perubahan berarti mempertimbangkan dengan tepat di mana Anda ingin membatalkannya.

gitPeriksa, git reset, dan gitmemulihkan adalah perintah yang dapat membantu Anda kembali ke versi sebelumnya tidak hanya basis kode Anda, tetapi juga file individual. Kenali detail perintah ini dan Anda akan melompati riwayat file Anda seperti ahli dalam waktu singkat.

Apa Arti Menyetel Ulang File?

Penting untuk dicatat bahwa mengatur ulang file mungkin memiliki arti yang berbeda bagi orang yang berbeda dalam keadaan yang berbeda. Juga git reset perintah mungkin tidak sesuai dengan harapan Anda tentang arti pengaturan ulang.

Terkadang, Anda ingin membatalkan perubahan lokal sehingga file kembali sinkron dengan repositori saat ini. Pada kesempatan lain, Anda mungkin ingin mengembalikan perubahan yang telah Anda komit ke repositori.

Istilah-istilah berikut adalah kunci untuk memahami perbedaannya: working tree, staging area, dan repository. File yang Anda edit secara lokal milik pohon kerja. File yang Anda komit akhirnya berakhir di repositori. Saat Anda sedang dalam proses mengumpulkan perubahan, Anda mengatur file. Sebuah file dapat memiliki konten yang berbeda di setiap lokasi ini.

Lihat juga: Tutorial Git Tingkat Lanjut

Anda mungkin menganggap menyetel ulang file sebagai membatalkan perubahan. Tetapi status file Anda akan menentukan perubahan apa yang sebenarnya Anda batalkan. Kasus yang jelas adalah ketika Anda membuat beberapa perubahan, mengkomitnya, kemudian memutuskan Anda tidak menginginkannya lagi.

Kasus lain mungkin Anda membuat file dan sekarang ingin menghapusnya.

Bagaimana Saya Mengembalikan File yang Dikomit Sebelumnya?

Mari kita tangani kasus yang lebih mudah dipahami: Anda meng-commit sebuah file dan sekarang Anda ingin mengembalikan perubahan pada file tersebut.

Perintah Git untuk melakukan ini, secara tidak sengaja, bernama Periksa. Anda mungkin pernah menggunakan Periksa sebelum beralih cabang, tetapi itu sebagian kecil dari apa yang dapat dilakukan perintah. Ini juga memungkinkan Anda untuk memperbarui file di pohon kerja Anda agar sesuai dengan yang ada di titik mana pun dalam riwayat repositori. Anda dapat melakukan ini untuk tag, cabang, atau bahkan komit tertentu.

Bentuk tujuan umum yang paling berguna dari perintah ini adalah:

git checkout [komit ID] -- jalur/ke/file

Di sini, kami melewati jalur tertentu (jalur/ke/file) yang mengidentifikasi hanya satu file. Kami juga menentukan ID komit untuk mendapatkan file seperti yang ada pada komit khusus itu. Perintah ini hanya akan memperbarui file di pohon kerja kami.

Perhatikan bahwa memeriksa versi file yang lebih lama akan mengubah copy pekerjaan, tanpa melakukan atau bahkan mementaskannya. Untuk sepenuhnya menyelesaikan pembatalan ke repositori, Anda harus mengatur file dan membuat komit baru.

Lihat juga: Cara Memeriksa Sejarah Proyek Dengan git log

Bagaimana Saya Mengubah Apa yang Saya Pementasan?

Jenis undo lainnya melibatkan area pementasan Anda. Ini berisi perubahan yang akan Anda lakukan di sebelah repositori. Jika Anda telah membuat versi file dan kemudian memutuskan Anda tidak ingin memasukkannya ke dalam komit berikutnya, Anda harus menghapusnya terlebih dahulu.

Anda dapat menggunakan git reset perintah untuk membatalkan tahap file yang dipentaskan:

git reset HEAD path/ke/file

Bisakah Saya Membatalkan Perubahan Lokal dengan Cepat?

Ya, Anda dapat membatalkan perubahan pada file lokal sebelum dipentaskan. Gunakan perintah berikut:

git checkout -- jalur/ke/file

Perhatikan bahwa ini mirip dengan mengembalikan perubahan repositori, itu hanya menghilangkan ID komit. Setelah Anda menjalankan perintah ini, Git akan membatalkan perubahan apa pun pada copy pekerjaan Anda.

Bagaimana dengan git restore?

Versi Git yang lebih baru memiliki perintah yang lebih baru: memulihkan. Untuk kasus sederhana yang telah kita diskusikan di sini, Anda dapat menggunakan padanan berikut. Untuk membatalkan perubahan pada repositori:

git restore --source [commit id] path/ke/file

Untuk menghapus tahapan file, gunakan:

git restore --tahapan jalur/ke/file

Dan untuk membatalkan perubahan copy pekerjaan:

git restore path/ke/file

Menguasai Kekuatan Versi Git Sangat Berharga

Meskipun mengatur ulang file mungkin tampak seperti hal yang biasa dilakukan, Anda akan menemukan hal itu jarang terjadi dalam praktiknya. Kemungkinan besar Anda akan memutar kembali seluruh komit daripada file individual. Namun, pada saat Anda perlu melakukannya, Git setidaknya membuatnya cukup mudah.

Cara Menghapus File dari Komit di Git

Gunakan perintah Git ini untuk melakukan operasi seperti menghapus file dari komit.

Baca Selanjutnya

MembagikanMenciakSurel
Topik-topik yang berkaitan
  • Pemrograman
  • GitHub
  • Pengembangan web
  • Pemrograman
Tentang Penulis
Bobby Jack (63 Artikel Diterbitkan)

Bobby adalah penggemar teknologi yang bekerja sebagai pengembang perangkat lunak selama hampir dua dekade. Dia bersemangat tentang game, bekerja sebagai Pemimpin Redaksi di Majalah Switch Player, dan mendalami semua aspek penerbitan online & pengembangan web.

More From Bobby Jack

Berlangganan newsletter kami

Bergabunglah dengan buletin kami untuk kiat teknologi, ulasan, ebook gratis, dan penawaran eksklusif!

Klik di sini untuk berlangganan