Menyelesaikan Konflik di Git: Panduan untuk Penyelesaian Konflik yang Efisien

Saat bekerja dengan Git, konflik terjadi ketika ada tumpang tindih atau bentrok antara perubahan kode sumber.

Misalnya, dua orang mengedit baris yang sama dalam sebuah file. Dalam kasus seperti itu, Git tidak dapat secara otomatis menentukan versi final dan memerlukan campur tangan pengguna untuk menyelesaikan konflik.

Berikut adalah langkah-langkah terperinci untuk menyelesaikan konflik di Git:

 

Mengidentifikasi konflik

Saat Anda menjalankan git merge atau git pull perintah dan konflik muncul, Git akan memberi tahu Anda tentang konflik tersebut dan menampilkan daftar file yang bertentangan.

 

Periksa file yang bertentangan

Buka file yang bentrok di editor teks dan identifikasi lokasi bagian kode yang bentrok. Bagian yang bertentangan akan ditandai dengan "<<<<<<<<", "=======", dan ">>>>>>>".

Contoh:

<<<<<<< HEAD  
Code from your branch  
=======  
Code from the other branch  
>>>>>>> other-branch  

 

Selesaikan konflik

Ubah kode sumber untuk menyelesaikan konflik. Anda dapat menyimpan sebagian kode, memodifikasi kode yang ada, atau bahkan mengganti seluruh kode dengan versi yang benar-benar baru. Tujuannya adalah untuk memastikan bahwa kode sumber berfungsi dengan benar dan memenuhi persyaratan proyek setelah menyelesaikan konflik.

Contoh, setelah menyelesaikan konflik:

Updated code that resolves the conflict

 

Komit perubahan setelah menyelesaikan konflik

Gunakan git add perintah untuk mengatur file yang diselesaikan untuk melakukan. Kemudian, gunakan git commit perintah untuk membuat komit baru yang merekam perubahan yang diselesaikan.

Contoh:

git add myfile.txt  
git commit -m "Resolve conflict in myfile.txt"  

 

Catatan: Selama proses penyelesaian konflik, Anda mungkin perlu berdiskusi dan berkolaborasi dengan anggota tim lainnya untuk mencapai konsensus tentang penyelesaian konflik yang tepat.

Dengan mengikuti langkah-langkah ini, Anda dapat menyelesaikan konflik di Git secara efektif, memastikan kontinuitas dan sinkronisasi dalam pengembangan perangkat lunak dan proses manajemen kode sumber.