Cara Memperbaiki Kesalahan Git: Anda harus menyelesaikan indeks Anda saat ini terlebih dahulu

Kesalahan “ Anda harus menyelesaikan indeks Anda saat ini terlebih dahulu ” terjadi di Git dan berarti ada konflik penggabungan dan kecuali Anda menyelesaikan konflik tersebut, Anda tidak akan diizinkan untuk melakukan checkout ke cabang lain. Pesan kesalahan ini juga menandakan bahwa penggabungan gagal atau ada konflik dengan file.

Kesalahan: Anda harus menyelesaikan indeks Anda saat ini terlebih dahulu di kontrol sumber Git

Apa semua file, penggabungan, dan konflik ini? Istilah-istilah ini tidak akan Anda ketahui jika Anda seorang pemula dalam menggunakan Git. Git adalah platform kontrol versi yang memungkinkan beberapa orang untuk mengerjakan file secara bersamaan dan mendorong salinan kode lokal mereka ke yang disimpan di cloud. Dengan cara ini jika Anda mengubah beberapa kode yang diunduh (atau sudah didorong) dan mendorongnya lagi ke cloud, perubahan tersebut akan ditimpa di cloud oleh salinan lokal Anda.

Git memiliki konsep cabang. Ada cabang induk dan beberapa cabang lain yang bercabang darinya. Kesalahan ini terutama terjadi jika Anda beralih dari satu cabang ke cabang lain (menggunakan checkout) dan ada konflik dalam file dari cabang saat ini. Jika masalah tidak teratasi, Anda tidak akan dapat beralih cabang.

Apa yang menyebabkan Git Error: Anda harus menyelesaikan indeks Anda saat ini terlebih dahulu?

Seperti disebutkan sebelumnya, penyebab kesalahan ini sangat terbatas. Anda akan mengalami kesalahan ini karena:

  • Sebuah penggabungan gagal dan Anda harus mengatasi konflik merge sebelum pindah dengan tugas-tugas lainnya.
  • Ada konflik dalam file di Anda saat ini (atau cabang yang ditargetkan) dan karena konflik ini, Anda tidak akan dapat memeriksa kode cabang atau push.

Sebelum Anda melanjutkan dengan solusi, pastikan Anda memiliki kontrol versi yang tepat dan sebaiknya hentikan anggota tim lain dari mengubah kode sebelum Anda menyelesaikan konflik.

Solusi 1: Menyelesaikan Konflik Penggabungan

Jika penggabungan Anda tidak diselesaikan secara otomatis oleh Git, ini meninggalkan indeks dan pohon kerja dalam keadaan khusus yang membantu memberi Anda semua informasi yang Anda butuhkan untuk menyelesaikan penggabungan. File yang memiliki konflik akan ditandai secara khusus dalam indeks dan sampai Anda menyelesaikan masalah dan memperbarui indeks, Anda akan terus menerima pesan kesalahan ini.

  1. Selesaikan semua konflik . Periksa file-file yang memiliki konflik karena mereka akan ditandai oleh indeks dan lakukan perubahan yang sesuai.
  2. Setelah Anda menyelesaikan semua konflik yang ada, tambahkan file dan kemudian lakukan .

Contohnya adalah:

$ git tambahkan file.txt $ git commit

Anda dapat menambahkan komentar pribadi Anda saat melakukan. Contohnya adalah:

$ git commit –m “Ini adalah Appuals Git repository”
  1. Setelah Anda menyelesaikan konflik, coba periksa dari cabang Anda yang ada dan lihat apakah masalahnya sudah diperbaiki.

Solusi 2: Mengembalikan Penggabungan Anda

Ada banyak kasus di mana Anda menggabungkan cabang dan mengacaukannya. Karena semua konflik dan kebingungan, proyek sekarang berantakan dan anggota tim Anda menyalahkan Anda karenanya. Dalam kasus ini, Anda harus mengembalikan komit sebelumnya (komit gabungan) . Ini akan membatalkan penggabungan seluruhnya dan mengembalikan seluruh proyek ke keadaan saat Anda tidak melakukan penggabungan. Ini bisa menjadi penyelamat jika Anda telah mengacaukan segalanya dan tidak bisa diperbaiki.

Untuk mengembalikan gabungan , ketik berikut ini:

$ git reset -–merge

Perintah di atas akan mengatur ulang indeks dan memperbarui file di pohon kerja yang berbeda antara 'komit' dan 'kepala'. Namun, itu akan menyimpan file-file yang berbeda antara indeks dan pohon kerja.

Anda juga dapat mencoba mengembalikan HEAD dengan menggunakan perintah berikut:

$ git mengembalikan HEAD

Jika Anda ingin menentukan komit gabungan yang ingin Anda kembalikan, Anda dapat menggunakan perintah kembalikan yang sama tetapi tentukan parameter tambahan. Hash SHA1 dari komit gabungan akan digunakan. -M diikuti oleh 1 menunjukkan bahwa kita ingin mempertahankan sisi induk dari penggabungan (cabang tempat kita menggabungkan). Hasil dari pengembalian ini adalah Git akan membuat komit baru yang mengembalikan perubahan dari penggabungan.

$ git mengembalikan -m 1 dd8d6f587fa24327d5f5afd6fa8c3e604189c8d4>