Git Revert vs Git Reset: Membatalkan dan Menyesuaikan Perubahan dalam Riwayat Git

Git Revert dan Git Reset merupakan dua perintah penting di Git untuk membatalkan dan menyesuaikan perubahan dalam commit riwayat repositori. Berikut adalah panduan tentang cara menggunakan Git Revert dan Git Reset:

 

Git Revert

  • Git Revert memungkinkan Anda membuat komit baru untuk membatalkan( revert) perubahan yang dilakukan sebelumnya.

  • Untuk revert, commit gunakan perintah berikut:

    git revert <commit_id>
    

    Ganti <commit_id> dengan ID yang commit ingin Anda kembalikan. Yang baru commit akan dibuat, membatalkan perubahan pada file commit.

  • Revert tidak mengubah commit sejarah tetapi membuat yang baru commit untuk mengembalikan perubahan.

 

Git Reset

  • Git Reset memungkinkan Anda untuk kembali ke keadaan sebelumnya dengan memindahkan HEAD cabang dan saat ini ke komit tertentu.

  • Git Reset memiliki tiga mode yang berbeda: --soft, --mixed(default), and --hard.

  • Ke reset cabang HEAD dan saat ini ke a commit, gunakan perintah berikut:

    git reset --mode <commit_id>
    

    Ganti <commit_id> dengan ID yang commit ingin Anda atur ulang.

  • Git Reset mode:

    • -soft: Memindahkan HEAD cabang dan saat ini ke yang ditentukan commit, menyimpan perubahan sebelumnya commit di area pementasan. Gunakan perintah git reset --soft <commit_id>.
    • --mixed: Ini adalah mode default. Memindahkan HEAD cabang dan saat ini ke komit yang ditentukan dan menghapus perubahan sebelumnya commit dari area pementasan. Gunakan perintah git reset --mixed <commit_id>.
    • --hard: Memindahkan HEAD cabang dan saat ini ke yang ditentukan commit dan membuang semua perubahan sebelumnya commit. Berhati-hatilah saat menggunakannya, karena setiap perubahan yang tidak dikomit akan hilang. Gunakan perintah git reset --hard <commit_id>.
    <commit_id>.
  • Git Reset mengubah commit riwayat dan dapat mengakibatkan hilangnya data, jadi gunakan dengan hati-hati.

 

Git Revert dan Git Reset merupakan alat yang ampuh untuk membatalkan dan menyesuaikan riwayat komit di Git. Gunakan dengan hati-hati untuk memastikan stabilitas proyek dan menghindari kehilangan data.