
Hal yang Paling Ditakuti Developer Junior
Kamu baru saja menyelesaikan fitur susah payah, lalu mengetik git pull atau mencoba menggabungkan (*merge*) *branch*-mu. Tiba-tiba terminal berteriak: CONFLICT (content): Merge conflict in index.html. Automatic merge failed.
Banyak pemula panik, mengira kodenya rusak, lalu menghapus folder projectnya dan men-download ulang dari GitHub. Hentikan kebiasaan itu! Merge Conflict adalah hal yang sangat normal dalam kerja tim.
Apa Penyebab Merge Conflict?
Git adalah mesin yang cerdas. Jika kamu mengedit baris ke-10 dan temanmu (Siti) mengedit baris ke-50 di file yang sama, Git akan menggabungkannya secara otomatis tanpa masalah.
Tapi, bagaimana jika kamu dan Siti sama-sama mengedit baris ke-10 di waktu yang bersamaan? Git akan bingung: "Teks milik siapa yang harus saya simpan? Milikmu atau milik Siti?" Karena mesin tidak berani mengambil keputusan yang bisa menghapus kerjamu, Git menghentikan prosesnya dan meminta bantuanmu (manusia) untuk memilih. Itulah Merge Conflict.
Cara Menyelesaikannya di VS Code
Buka file yang bermasalah (yang ditunjukkan berwarna merah) di Visual Studio Code. Kamu akan melihat kode aneh yang sebelumnya tidak pernah kamu tulis, bentuknya seperti ini:
<<<<<<< HEAD (Current Change)
<h1>Selamat Datang di Web Budi</h1>
=======
<h1>Halo, Ini Web Siti</h1>
>>>>>>> fitur-siti (Incoming Change)VS Code akan dengan pintar menyorot teks ini dengan warna hijau dan biru, dan memunculkan tombol ajaib di atasnya. Kamu tinggal memilih salah satu dari opsi ini dengan mengkliknya:
- Accept Current Change: Pakai kode milikku (Budi), buang milik Siti.
- Accept Incoming Change: Pakai kode milik Siti, buang milikku.
- Accept Both Changes: Simpan dua-duanya (keduanya akan berbaris ke bawah).
Langkah Terakhir: Commit Solusinya
Setelah kamu mengklik pilihanmu, kode aneh (<<< === >>>) akan otomatis menghilang. Save (Ctrl+S) file tersebut.
Sekarang, kamu hanya perlu memberi tahu Git bahwa konfliknya sudah beres dengan cara melakukan komit seperti biasa:
git add .
git commit -m "fix: menyelesaikan merge conflict di index.html"Kesimpulan
Merge Conflict bukan error yang merusak sistem. Itu hanya Git yang meminta persetujuanmu. Buka file-nya, pilih kode mana yang benar, save, lalu commit ulang. Selesai!
Mau langsung pakai template?
Jelajahi template gratis dan premium di TampilKit untuk mempercepat proses development project kamu.
Browse Templates