Apa Perbedaan Antara git reset –dicampur, –lunak, dan –keras?

Apa Perbedaan Antara Git Reset Dicampur Lunak Dan Keras



Di Git, setiap komit ditautkan ke komit sebelumnya, dan HEAD menunjuk ke komit terbaru di cabang kerja. Riwayat komit disimpan sebagai pohon komit. Namun, terkadang pengembang perlu mengubah riwayat komit. Untuk tujuan ini, “ $git ulang ” Perintah digunakan untuk mengubah riwayat repositori Git dan memperbaiki kesalahan yang dibuat.

Artikel ini akan menjelaskan secara singkat perbedaan antara git reset –hard, –soft, dan –mixed.

Apa Perbedaan Antara git reset –dicampur, –lunak, dan –keras?

Git menyediakan beberapa opsi reset. Berdasarkan cara mereka menangani komit, semua opsi yang tersedia berbeda satu sama lain. Mereka semua mengubah riwayat Git dan memindahkan KEPALA kembali. Selain itu, mereka menangani perubahan secara berbeda, seperti:







  • -lembut ” pilihan yang digunakan dengan “ $git ulang ” perintah untuk menyimpan file dan mengembalikan perubahan komit ke indeks pementasan Git.
  • $ git reset –dicampur ” digunakan untuk membatalkan perubahan komit dan menghapus file dari indeks pementasan tanpa menghapusnya dari direktori kerja.
  • -keras ” pilihan dengan “ $git ulang ” Perintah digunakan untuk menghapus semua perubahan dan menghapusnya dari direktori kerja lokal.

Mari kita ambil contoh untuk melihat bagaimana ' $git ulang ” perintah bekerja dengan opsi yang berbeda!



Langkah 1: Buka Repositori Git yang Diinginkan

Pertama, pindah ke repositori Git yang Anda inginkan dengan menggunakan tombol “ CD ' memerintah:



$ CD 'C:\Pergilah \t is_repo'





Langkah 2: Buat File

Sekarang, jalankan perintah yang diberikan di bawah ini untuk membuat file:

$ menyentuh File4.txt



Langkah 3: Tambahkan File ke Staging Index

Menggunakan ' git tambahkan ” perintah untuk menambahkan file yang baru dibuat ke dalam indeks pementasan:

$ git tambahkan File4.txt

Langkah 4: Lakukan Perubahan

Selanjutnya, tambahkan semua perubahan ke repositori kerja dengan menjalankan perintah “ git komit ' memerintah:

$ git komit -m 'File4 ditambahkan'

Langkah 5: Periksa Git Log

Kemudian, periksa riwayat log Git untuk melihat komit terbaru yang ditambahkan:

$ log git

Pada output di bawah ini, dapat dilihat bahwa semua komit yang ditambahkan terakhir ditampilkan, dan ' KEPALA ” menunjuk ke komit baru-baru ini:

Catatan: Untuk memeriksa posisi penunjuk HEAD saat ini dengan cara yang lebih baik, jalankan perintah “ log git ” perintah bersama dengan “ –oneline bendera:

$ log git --on line

Output yang diberikan di bawah ini menunjukkan daftar hash SHA komit dengan pesan komit:

Langkah 6: Gunakan perintah git reset –soft

Untuk mengembalikan perubahan yang ditambahkan dari repositori Git ke indeks pementasan, gunakan tombol “ reset git ” perintah bersama dengan “– lembut ”, dan tentukan posisi HEAD yang diinginkan di mana diperlukan untuk memindahkan pointer:

$ reset git --lembut KEPALA~ 1

Langkah 7: Periksa Status Git

Sekarang, verifikasi posisi pengembalian HEAD periksa status repositori Git:

$ status git

Dapat dilihat bahwa “ git reset –lunak ” perintah telah mengembalikan perubahan komit ke indeks pementasan Git. Selain itu, “ File4.txt ” file sekarang ada dalam indeks pementasan Git dan perlu dilakukan:

Langkah 8: Periksa Git Log

Untuk melihat posisi HEAD saat ini, jalankan perintah yang diberikan bersama dengan “ –oneline ' pilihan:

$ log git --on line

Di sini, KEPALA menunjuk ke ' File3 ” komit:

Langkah 9: Gunakan perintah git reset — campuran

Untuk membatalkan perubahan yang dilakukan dan menghapus file dari area pementasan tanpa menghapusnya dari direktori kerja, jalankan ' $ git reset –dicampur ” perintah bersama dengan posisi HEAD yang diperlukan dari komit:

$ reset git --Campuran KEPALA~ 1

Langkah 10: Periksa Status Git

Lihat perubahan yang baru ditambahkan dengan memeriksa status repositori Git:

$ status git

Dapat diamati bahwa perubahan komit yang ditentukan dihapus dari area pementasan. Namun, mereka ditempatkan di area kerja:

Langkah 11: Periksa Log Git

Periksa riwayat log referensi repositori Git bersama dengan hash SHA:

$ log git --on line

Langkah 12: Gunakan git reset — Hard Command

Untuk menghapus perubahan tambahan dari direktori kerja lokal Git, jalankan perintah “ $ git reset –keras ' memerintah:

$ reset git --keras KEPALA~ 1

Langkah 13: Verifikasi Penunjuk KEPALA yang Dikembalikan

Untuk memverifikasi penunjuk HEAD, kembali ke posisi yang ditentukan, jalankan ' log git ' memerintah:

$ log git --on line

Output di bawah ini menunjukkan bahwa HEAD menunjuk ke “ File1 ditambahkan ” komit:

Langkah 14: Periksa Status Git

Untuk melihat perubahan yang ditambahkan, periksa status Git:

$ status git

Dapat dilihat bahwa kami tidak memiliki jalur apa pun dan menunggu perubahan dari “ File2.txt ” berkas. Oleh karena itu, File2.txt telah dihapus seluruhnya:

Langkah 15: Verifikasi Daftar Konten Repositori

Untuk memverifikasi daftar konten repositori, jalankan ' ls ' memerintah:

$ ls

Seperti yang Anda lihat, ' File2.txt ” file tidak ada di direktori saat ini:

Kami telah menjelaskan perbedaan antara opsi git reset –mixed, –soft, dan –hard.

Kesimpulan

reset git ” Perintah digunakan untuk mengatur ulang perubahan, memodifikasi riwayat repositori Git, dan memperbaiki kesalahan. “ git reset –lunak ” perintah menyimpan file dan mengembalikan perubahan komit ke area pementasan Git. Sebaliknya, “ git reset –dicampur ” perintah batalkan perubahan komit dan hapus file dari indeks pementasan tanpa menghapusnya dari direktori kerja. Untuk menghapus semua perubahan dan menghapusnya dari area kerja Git, tombol “ git reset –keras ” perintah dapat digunakan. Artikel ini mengilustrasikan perbedaan antara git reset –mixed, –soft, dan –hard.