Lewati ke konten utama

Panduan: Cara Menyelesaikan Konflik Merge di Git

Pelajari berbagai perintah dan alat untuk menggabungkan dua branch dan menyelesaikan konflik di Git—keahlian penting bagi data scientist.
Diperbarui 28 Sep 2026  · 10 mnt Baca

Jelajahi bersama AI

ChatGPTClaudePerplexity

Apa itu Konflik Merge Git?

Sistem version control Git berfokus pada kerja tim dan kontribusi terhadap proyek. Developer biasanya bekerja pada branch terpisah, dan ketika selesai, mereka menggabungkan perubahan ke branch utama. Jenis kerja sama seperti ini sangat produktif dan efektif dalam menemukan bug. Terkadang beberapa developer bekerja pada baris kode yang sama, dan saat mencoba menggabungkan perubahan, timbul konflik. 

Git Merge Conflicts Graphic
Contoh sederhana konflik Git

Diagram di atas memberikan contoh sempurna tentang bagaimana konflik merge Git yang umum terjadi. Branch utama memiliki file yang berisi teks “HELLO, WORLD!”. Pengguna abid melakukan fork pada branch utama, dan mengubah teks menjadi “HELLO, CAT!”. Sementara abid membuat perubahan, branch utama asli juga dimodifikasi menjadi “HELLO, DOG!”. Menggabungkan branch ini akan memunculkan konflik merge dan menghentikan prosesnya.  

Tugas utama perintah git merge adalah menggabungkan dua branch dan menyelesaikan konflik secara otomatis. Namun, sesekali konflik muncul ketika dua orang mengubah baris kode yang sama atau menghapus file penting yang sedang dikerjakan developer lain. Git akan menandai perubahan tersebut dan menghentikan proses merge. Dalam kasus ini, konflik tidak diselesaikan secara otomatis; developer harus melakukan perubahan secara manual atau menggunakan alat untuk menyelesaikan konflik.

Jenis Merge

Git merge dan rebase adalah dua cara untuk mengintegrasikan commit dari branch target ke branch sumber. Lebih lanjut, Git merge melakukan fast-forward atau no-fast-forward merge. Jika head dari branch target ada di branch sumber, maka secara default tipe merge akan fast-forward, dan jika tidak ada, maka no-fast-forward. Git rebase adalah tipe merge lain yang mengurutkan ulang riwayat commit dari branch target. 

Fast-forward merge

Git Fast Forward Merge

Secara default, Git merge menggunakan fast-forward untuk mengintegrasikan commit yang hilang ke branch target. Misalnya, ini digunakan untuk memperbarui branch lokal dari server remote menggunakan perintah pull. Fast-forward tidak menimbulkan konflik merge karena Git tidak akan menerapkannya jika head dari branch target tidak ada di branch sumber. 

No-fast-forward merge

Git No-fast-forward Merge

No-fast-forward merge juga disebut three-way atau true merge. Ini membuat commit baru pada branch target dengan mengintegrasikan perubahan di kedua branch, sumber dan target. Perubahan digabungkan setelah commit umum terakhir di kedua branch. Dalam contoh kita, setelah C. Jenis merge ini akan memunculkan konflik merge jika branch sumber berselisih dengan branch target. Pada diagram di atas, merge commit (X) dibuat dengan mengintegrasikan branch sumber dan target, di mana K dan E adalah parent dari merge commit tersebut. 

Rebase 

Git Rebase

Git rebase sedikit berbeda dari jenis lainnya. Ini mengubah urutan riwayat commit branch target. Rebase mengintegrasikan branch sumber sedemikian rupa sehingga branch target berisi semua perubahan dari branch sumber, diikuti semua commit branch target setelah commit umum terakhir. Dalam kasus kita, commit umum terakhir adalah C, sedangkan D dan E berasal dari branch sumber. Commit K* sama dengan K dengan id commit yang berbeda. Alih-alih menautkan ke C, ia akan menaut ke E. Mirip dengan no-fast-forward merge, jika ada masalah kompatibilitas antara branch sumber dan target, Git akan menimbulkan isu untuk menyelesaikan konflik sebelum menyelesaikan rebase. 

Jenis Konflik Merge Git

Ada dua jenis konflik merge Git: di awal dan selama proses merge - Atlassian. Pada bagian ini, kita akan mempelajari keduanya dan cara menyelesaikan masing-masing skenario. 

Pada awal merge

Git merge akan gagal di awal jika ada perubahan di working directory atau staging area. Ini gagal di awal untuk mencegah perubahan ditimpa oleh commit merge yang masuk. Hal ini terjadi karena konflik dengan perubahan lokal, bukan dengan branch atau developer lain. Untuk menstabilkan kondisi lokal, Anda dapat menggunakan perintah seperti git stash, git commit, git checkout, atau git reset.

Selama merge

Kegagalan selama merge berarti ada konflik antara branch sumber dan target di mana beberapa developer telah memodifikasi file yang sama. Jika merge otomatis gagal, Git akan meminta Anda menyelesaikan masalah secara manual. Anda juga dapat menggunakan alat pihak ketiga untuk membantu memvisualisasikan dan mengintegrasikan perubahan.

Perintah untuk Menyelesaikan Konflik Merge Git

Pada bagian ini, kita akan mempelajari berbagai perintah bawaan untuk memvisualisasikan dan menyelesaikan konflik merge Git. 

Perintah umum

Git status adalah perintah yang paling sering digunakan untuk menampilkan status file yang dimodifikasi, staging area, dan commit. Selama proses merge, ini digunakan untuk mengidentifikasi file yang berkonflik.  

git status

Git log dengan argumen --merge menghasilkan daftar commit yang berkonflik dengan branch sumber. 

git log --merge

Secara default, opsi git diff akan menampilkan perbedaan antara perubahan yang belum di-commit dan commit sebelumnya. Git diff digunakan untuk membandingkan branch, commit, dan file. Ini berguna untuk mencegah konflik merge di masa mendatang. 

git diff 

Perintah saat merge gagal di awal

Checkout digunakan untuk membatalkan perubahan atau beralih ke branch baru atau lama. 

git checkout

Git reset digunakan untuk mengembalikan perubahan di working directory dan staging area. 

git reset --mixed

Perintah untuk konflik saat merge

Argumen --abort akan menghentikan proses merge dan mengembalikan perubahan ke kondisi semula sebelum merge dimulai. 

git merge --abort

Git reset biasanya digunakan selama proses merge untuk mengembalikan file yang berkonflik ke kondisi aslinya.

git reset

Menyelesaikan konflik deleted-modified

Konflik Git akan terjadi jika Anda menghapus file di branch saat ini, dan orang lain memodifikasinya di branch lain. Dalam kasus ini, Anda dapat menambahkan kembali file dan commit,

git add <filename>

atau Anda dapat menghapus file dan commit. 

git rm <filename>

📌 Lembar contekan penyelesaian konflik merge Git

Perintah Deskripsi Contoh Penggunaan
git status Menampilkan file yang mengalami konflik merge git status
git diff Menampilkan perbedaan antara commit atau branch git diff HEAD
git log --merge Menampilkan commit yang terlibat dalam konflik git log --merge
git merge --abort Membatalkan merge dan memulihkan kondisi sebelumnya git merge --abort
git reset --hard HEAD Mengatur ulang branch ke kondisi commit terakhir git reset --hard HEAD
git checkout -- <filename> Menghapus perubahan pada file tertentu git checkout -- README.md
git mergetool Membuka tool merge terkonfigurasi untuk menyelesaikan konflik git mergetool
git add <filename> Menandai konflik sebagai terselesaikan setelah pengeditan git add README.md
git commit -m "<message>" Menyimpan perubahan yang telah diselesaikan setelah konflik merge git commit -m "Resolved merge conflict"
git rebase --continue Melanjutkan rebase yang terhenti setelah menyelesaikan konflik git rebase --continue
git rm <filename> Menghapus file yang dihapus di satu branch dan dimodifikasi di branch lain git rm README.md
git push Mendorong perubahan setelah menyelesaikan konflik merge git push origin main

Alat Visual Merge

Merge tool adalah alat visual yang ramah pengguna untuk mengidentifikasi dan menyelesaikan semua jenis konflik merge. Beberapa alat mendukung kemampuan tambahan seperti membandingkan perubahan, operasi Git, serta manajemen proyek dan repositori. Ada dua jenis alat merge Git: berbasis terminal dan berbasis GUI. Alat berbasis terminal terbuka di PowerShell atau Bash, sedangkan yang berbasis GUI terbuka di lingkungan jendela. 

Untuk memeriksa daftar alat yang terpasang dan valid, gunakan:

git mergetool --tool-help 

Daftar tersebut berisi semua alat valid yang dapat diinstal dan diintegrasikan dengan perintah git.

Misalnya, kita memiliki vim dan nvim yang terpasang secara default, dan jika Anda ingin melihat perbedaan antara file yang belum di-commit dan commit sebelumnya, ketik:

git difftool --tool=vimdiff3

Alat vimdiff3 menyorot perubahan dan memungkinkan Anda membandingkan commit di dalam terminal. 

Perbedaan antara dua versi file yang sama di Vimdiff3

Perbedaan antara dua versi file yang sama di vimdiff3

Meld

Meld adalah alat gratis dan open-source yang membawa penyelesaian konflik merge ke level berikutnya. Untuk mengintegrasikannya dengan Git, Anda perlu terlebih dahulu mengunduh dan memasang berkas instalasi dari situs resmi. Selanjutnya, tambahkan ke konfigurasi global sehingga secara default, Git akan menjalankan Meld untuk menyelesaikan konflik.  

Perintah konfigurasi di bawah ini hanya berlaku untuk pengguna Windows. Satu-satunya perubahan yang perlu Anda lakukan adalah mengubah path berkas terpasang Meld untuk Mac atau Linux. 

git config --global merge.tool meld 

git config --global mergetool.meld.path "C:/Program Files (x86)/Meld/Meld.exe" 

git config --global diff.tool meld

git config --global difftool.meld.path "C:/Program Files (x86)/Meld/Meld.exe"

Setelah menyiapkan default, Anda dapat mengetik git difftool di dalam direktori lokal Git untuk membuka Meld versi Windows, atau Anda dapat menjalankan git mergetool untuk menyelesaikan konflik merge seperti yang ditunjukkan di bawah.

Menyelesaikan Konflik Merge dengan Meld di Git

Menyelesaikan konflik merge dengan Meld

VSCode

VSCode menyediakan cara terbaik dan paling populer untuk menyelesaikan konflik merge. Ketika Git gagal menggabungkan file secara otomatis, VSCode akan menyorot kode yang berkonflik dan memberi Anda empat opsi: accept current changes, accept incoming changes, accept both changes, dan compare changes. Anda dapat menggunakan opsi-opsi ini untuk merapikan file dan menyelesaikan semua masalah yang tertunda. 

Menyelesaikan Konflik Merge Git dengan VSCode

Menyelesaikan konflik merge dengan VSCode

Jika Anda mencari solusi lengkap untuk operasi Git Anda, coba GitKraken. Ini hadir dengan klien gratis, ekstensi VSCode, dan menyediakan alat bawaan untuk menyelesaikan konflik merge.  

Cara Menyelesaikan Konflik Merge Git

Pada bagian ini, kita akan mempelajari cara membuat konflik merge Git lalu menyelesaikannya. Tutorial dibagi menjadi dua bagian. Pada bagian pertama, kita akan belajar menyelesaikan konflik Git secara lokal; bagian kedua membahas penyelesaian konflik dengan server remote (GitHub).

Konflik merge lokal

Membuat konflik merge akan membantu kita memahami bagaimana masalah ini muncul sejak awal. Lalu kita bisa menggunakan cara kreatif untuk menyelesaikan atau bahkan mencegahnya di masa depan. 

Sekarang kita akan membuat repositori Git dengan satu file dan membuat commit pertama untuk memulai. 

  1. Buat folder bernama datacamp.
  2. Ganti direktori ke datacamp.
  3. Inisialisasi Git.
  4. Buat file README.md dengan judul yang diberikan.
  5. Stage dan commit perubahan pada file.
mkdir datacamp
cd datacamp
git init
echo "# How to Resolve Git Merge Conflict" > README.md
git add README.md
git commit -m "first commit"

>>> [main (root-commit) 8199ea2] first commit
>>>  1 file changed, 1 insertion(+)
>>> create mode 100644 README.md

Selanjutnya, kita akan membuat branch baru readme dan mengubah judul dari “..Git Merge..” menjadi “..Git..”. Tambahkan file dan buat commit menggunakan argumen -am.

git checkout -b readme
echo "# How to Resolve Git Conflict" > README.md
git commit -am "new branch conflict added"

>>> [readme 155f694] new branch conflict added
>>> 1 file changed, 1 insertion(+), 1 deletion(-)

Kembali ke branch main dan tambahkan satu baris baru ke file README.md menggunakan >>. Dengan menyimpan perubahan dan membuat commit, kita telah berhasil membentuk konflik antara dua versi file yang sama. 

git checkout main
echo "New change in base branch" >> README.md
git commit -am " a line added to base branch Readme file"

>>> [main f1f1874]  a line added to base branch Readme file
>>> 1 file changed, 1 insertion(+)

Seperti yang kita lihat, saat melakukan merge branch readme, Git menampilkan pesan bahwa merge otomatis gagal, dan kita harus melakukan perubahan secara manual lalu commit hasilnya. 

git merge readme

>>> Auto-merging README.md
>>> CONFLICT (content): Merge conflict in README.md
>>> Automatic merge failed; fix conflicts and then commit the result.

Kita akan menyelesaikan masalah secara manual dengan membuka dan mengedit file di Notepad. Gambar di bawah menunjukkan panah dengan HEAD, pemisah, dan panah ke arah berbeda dengan readme. Bagian HEAD menunjukkan perubahan yang ada di branch main, dan bagian readme adalah branch yang ingin kita merge, yang berisi judul berbeda. 

Menyelesaikan Konflik Merge Secara ManualMenyelesaikan konflik merge secara manual 

Untuk menyelesaikan masalah, kita akan menghapus bagian branch readme, panah, dan pemisah. Versi akhir file harus bersih seperti ditunjukkan di bawah. 

Konflik terselesaikan 

Setelah kita menambahkan file dan membuat commit, konflik merge akan terselesaikan. Ini adalah cara paling umum dan paling sederhana untuk menyelesaikan masalah. Anda juga dapat menggunakan integrated development environment (IDE) untuk menyelesaikan masalah lebih cepat.

git commit -am "conflict resolved in file README.md"
>>> [main 9994a29] conflict resolved in file README.md

Konflik merge remote

Untuk membuat dan menyelesaikan konflik merge remote, kita perlu membuat repositori baru di GitHub.

Membuat Repositori Baru di GitHub

Membuat repositori baru di GitHub

Berikutnya, tambahkan nama remote (origin) dengan alamat repositori dan push semua perubahan dari repositori lokal ke branch main remote menggunakan upstream.

git remote add origin https://github.com/kingabzpro/DataCamp-Git-Merge-Guide.git
git push --set-upstream origin main


>>> Enumerating objects: 12, done.
>>> Counting objects: 100% (12/12), done.
>>> Delta compression using up to 4 threads
>>> Compressing objects: 100% (6/6), done.
>>> Writing objects: 100% (12/12), 998 bytes | 499.00 KiB/s, done.
>>> Total 12 (delta 2), reused 0 (delta 0), pack-reused 0
>>> remote: Resolving deltas: 100% (2/2), done.
>>> To https://github.com/kingabzpro/DataCamp-Git-Merge-Guide.git
>>>  * [new branch]      main -> main
>>> branch 'main' set up to track 'origin/main'.

Untuk membuat konflik, kita perlu melakukan perubahan pada file README.md di remote dan lokal. Anda dapat menggunakan editor file GitHub untuk mengubah “..Git merge..” menjadi “..Sit-Merge..” lalu commit perubahannya. 

Melakukan Perubahan di Editor GitHub

Melakukan perubahan di editor GitHub

Kemudian, di repositori lokal, ubah file README.md untuk hanya menambahkan judul sederhana dan commit perubahannya. 

echo "# How to Resolve Merge Conflicts in Git Tutorial" > README.md
git commit -am "local branch changes in README.md"

>>> [main c677a13] local branch changes in README.md
>>>  1 file changed, 1 insertion(+), 4 deletions(-)

Terakhir, push perubahan ke server remote. Perhatikan bahwa Git menampilkan error dengan petunjuk cara menghilangkan masalah tersebut. 

git push


>>> To https://github.com/kingabzpro/DataCamp-Git-Merge-Guide.git
>>>  ! [rejected]        main -> main (fetch first)
>>> error: failed to push some refs to 'https://github.com/kingabzpro/DataCamp-Git-Merge-Guide.git'
>>> hint: Updates were rejected because the remote contains work that you do
>>> hint: not have locally. This is usually caused by another repository pushing
>>> hint: to the same ref. You may want to first integrate the remote changes
>>> hint: (e.g., 'git pull ...') before pushing again.
>>> hint: See the 'Note about fast-forwards' in 'git push --help' for details.

Kita akan mengikuti petunjuk paling sederhana, yaitu menarik (pull) file dari server remote sebelum melakukan push. 

Pull file gagal karena konflik merge pada file README.md. Kita bisa memperbaikinya secara manual menggunakan Notepad, tetapi kali ini kita akan menggunakan alat visual untuk membantu proses ini. 

git pull


>>> remote: Enumerating objects: 5, done.
>>> remote: Counting objects: 100% (5/5), done.
>>> remote: Compressing objects: 100% (2/2), done.
>>> remote: Total 3 (delta 0), reused 0 (delta 0), pack-reused 0
>>> Unpacking objects: 100% (3/3), 681 bytes | 75.00 KiB/s, done.
>>> From https://github.com/kingabzpro/DataCamp-Git-Merge-Guide
>>>    aaf149d..49b7d14  main       -> origin/main
>>> Auto-merging README.md
>>> CONFLICT (content): Merge conflict in README.md
>>> Automatic merge failed; fix conflicts and then commit the result.

Merge tool Meld akan mengidentifikasi file yang berkonflik dan menampilkannya di aplikasi GUI Meld.   

git mergetool

>>> Merging:
>>> README.md

>>> Normal merge conflict for 'README.md':
>>>   {local}: modified file
>>>   {remote}: modified file

Ada tiga kolom: README_LOCAL_473.md, README.md, dan README_LOCAL_473.md. Jika Anda menilai perubahan remote yang valid, klik panah hitam di kolom remote; dan jika Anda ingin perubahan lokal dipertahankan, klik panah hitam di kolom local. Semudah itu. 

Git: Konflik Diselesaikan Menggunakan mergetool Meld

Konflik diselesaikan menggunakan merge tool Meld

Setelah melakukan perubahan, simpan file dan lakukan commit. Seperti yang Anda lihat, melakukan push file ke server remote tidak lagi menimbulkan error konflik merge.

git commit -am "remote main branch conflict resolved"
git push

>>> Enumerating objects: 16, done.
>>> Counting objects: 100% (16/16), done.
>>> Delta compression using up to 4 threads
>>> Compressing objects: 100% (6/6), done.
>>> Writing objects: 100% (10/10), 1.08 KiB | 550.00 KiB/s, done.
>>> Total 10 (delta 2), reused 0 (delta 0), pack-reused 0
>>> remote: Resolving deltas: 100% (2/2), completed with 1 local object.
>>> To https://github.com/kingabzpro/DataCamp-Git-Merge-Guide.git
>>>    49b7d14..8f5c3aa  main -> main

Kita telah berhasil menyelesaikan konflik merge baik lokal maupun remote. Konflik ini dihadapi setiap hari oleh data scientist dan machine learning engineer. Untuk meningkatkan keterampilan Anda dalam operasi Git, ambil kursus Introduction to Git. 

Kesimpulan

Menyelesaikan konflik merge Git adalah tugas yang kompleks dan berisiko tinggi karena Anda bisa merusak perangkat lunak dengan menggabungkan kode yang bermasalah. Merge tool menyediakan lingkungan yang ramah pengguna dengan cara yang lebih aman untuk mendeteksi dan menyelesaikan konflik merge. Dalam tutorial ini, kita telah mempelajari mengapa konflik Git terjadi dan bagaimana menyelesaikannya. Kita juga membahas berbagai jenis merge dan konflik, perintah Git yang berguna, serta alat visual. Pada bagian terakhir, kita membuat konflik merge dan menyelesaikannya di repositori lokal dan remote. 

Jika Anda baru di Git dan ingin belajar cara kerjanya, baca: Intro to Git and GitHub Tutorial. 


Abid Ali Awan's photo
Author
Abid Ali Awan
LinkedIn
Twitter

Sebagai data scientist tersertifikasi, saya bersemangat memanfaatkan teknologi mutakhir untuk menciptakan aplikasi machine learning yang inovatif. Dengan latar belakang kuat di pengenalan ucapan, analisis dan pelaporan data, MLOps, conversational AI, dan NLP, saya mengasah keterampilan dalam mengembangkan sistem cerdas yang berdampak nyata. Selain keahlian teknis, saya juga komunikator andal yang mampu menyederhanakan konsep kompleks menjadi bahasa yang jelas dan ringkas. Karena itu, saya menjadi blogger yang dicari di bidang data science, membagikan wawasan dan pengalaman kepada komunitas profesional data yang terus berkembang. Saat ini, saya berfokus pada pembuatan dan penyuntingan konten, bekerja dengan large language model untuk mengembangkan konten yang kuat dan menarik agar membantu bisnis dan individu memaksimalkan data mereka.

FAQs

Apa praktik terbaik untuk menghindari konflik merge Git?

Untuk mengurangi risiko konflik:

  • Selalu tarik perubahan terbaru (git pull origin main) sebelum memulai pekerjaan baru.
  • Berkomunikasilah dengan tim Anda untuk menghindari mengerjakan baris kode yang sama.
  • Lakukan commit kecil dan sering daripada yang besar dan kompleks.
  • Gunakan feature branch alih-alih commit langsung ke main.
  • Jalankan git diff sebelum merge untuk mendeteksi potensi konflik lebih awal.

Bisakah saya menyelesaikan konflik merge tanpa terminal?

Ya! Banyak alat Git berbasis GUI yang memudahkan penyelesaian konflik:

  • VS Code: Menyorot konflik dengan opsi "Accept Incoming" dan "Accept Current".
  • GitKraken: Menyediakan antarmuka visual untuk menyelesaikan konflik secara interaktif.
  • Meld / Beyond Compare: Merge tool yang membantu membandingkan dan menyelesaikan perbedaan secara visual. Jalankan git mergetool untuk menggunakan alat visual yang telah dikonfigurasi.

Mengapa saya terus mendapat konflik merge meskipun sudah menyelesaikannya?

Kemungkinan penyebab meliputi:

  • Anda lupa stage (git add) dan commit (git commit -m "Resolved conflict") file yang telah diselesaikan.
  • Rekan tim lain mendorong perubahan konflik baru setelah Anda menyelesaikan milik Anda. Coba git pull --rebase.
  • Anda belum melakukan push perubahan yang telah diselesaikan sebelum merge lagi. Selalu jalankan git push setelah menyelesaikan konflik.

Apa yang harus saya lakukan jika saya tidak sengaja membatalkan merge (git merge --abort)?

Jika Anda membatalkan merge tetapi ingin mencoba lagi, Anda dapat:

  • Cukup jalankan ulang perintah merge (git merge <branch-name>).
  • Gunakan git reflog untuk memeriksa kondisi sebelumnya sebelum abort dan pulihkan jika diperlukan.

Bagaimana cara membatalkan kesalahan saat menyelesaikan konflik merge?

Jika Anda membuat kesalahan saat menyelesaikan konflik:

  • Jalankan git reset --hard HEAD untuk membuang semua perubahan dan memulai ulang.
  • Gunakan git checkout -- <filename> untuk mengembalikan file tertentu ke kondisi aslinya.
  • Jika Anda sudah melakukan commit atas kesalahan tersebut, gunakan git revert <commit-hash> untuk membuat commit baru yang membatalkan perubahan.

Bagaimana cara menyelesaikan konflik merge pada file biner?

Git tidak dapat melakukan merge file biner secara otomatis (misalnya, gambar, PDF). Untuk menyelesaikannya:

  • Pilih secara manual versi mana yang akan dipertahankan dan gantikan file.
  • Gunakan git checkout --theirs <filename> atau git checkout --ours <filename> untuk mempertahankan salah satu versi.
  • Commit file yang telah diselesaikan (git add <filename> && git commit -m "Resolved binary file conflict").

Apa perbedaan antara git merge --abort dan git reset --merge?

  • git merge --abort: Dengan aman membatalkan merge dan mengembalikan branch ke kondisi sebelumnya sebelum merge.
  • git reset --merge: Serupa, tetapi mempertahankan file yang sudah di-stage dan bisa lebih berguna jika Anda ingin menyimpan perubahan tertentu.

Bagaimana cara menyelesaikan konflik merge saat melakukan push ke GitHub?

Jika git push gagal dengan error konflik merge, coba langkah berikut:

  • Tarik perubahan terbaru: git pull origin main --rebase
  • Selesaikan konflik secara manual di branch lokal Anda.
  • Stage dan commit file yang telah diselesaikan:
git add <conflicted-file>
git commit -m "Resolved merge conflict"
  • Push lagi: git push origin main

Apa itu konflik rebase, dan bagaimana cara memperbaikinya?

Konflik rebase terjadi saat menjalankan git rebase <branch> dan perubahan tidak dapat diterapkan dengan bersih. Untuk memperbaikinya:

  • Selesaikan konflik secara manual, lalu jalankan git rebase --continue.
  • Jika Anda ingin membatalkan rebase, gunakan git rebase --abort.
  • Gunakan git rebase --skip jika Anda ingin mengabaikan commit yang berkonflik.

Bisakah saya menggabungkan branch tanpa konflik menggunakan pengaturan Git?

Git memiliki strategi auto-merge yang kadang membantu:

  • Gunakan git merge -X theirs <branch> untuk selalu menerima perubahan branch lain.
  • Gunakan git merge -X ours <branch> untuk selalu mempertahankan perubahan branch Anda. Namun, ini tidak pasti dan harus digunakan dengan hati-hati.
Topik
Git
Data Science

Pelajari lebih lanjut tentang Git lewat kursus-kursus ini!

Kursus

Pengantar Git

2 jam
104.9K
Pelajari dasar-dasar Git untuk version control dalam proyek perangkat lunak dan data Anda.
Lihat DetailRight Arrow
Mulai Kursus
Lihat SelengkapnyaRight Arrow
Terkait

blogs

Tutorial Korelasi di R

Dapatkan pengenalan dasar-dasar korelasi di R: pelajari lebih lanjut tentang koefisien korelasi, matriks korelasi, plotting korelasi, dan sebagainya.
David Woods's photo

David Woods

13 mnt

blogs

Spaghetti Plot dan Jalur Badai

Temukan alasan mengapa Anda sebaiknya (tidak) menggunakan spaghetti plot untuk menyampaikan ketidakpastian jalur prediksi badai serta dampaknya terhadap interpretasi.
Hugo Bowne-Anderson's photo

Hugo Bowne-Anderson

13 mnt

blogs

40 Pertanyaan Wawancara DBMS Teratas di 2026

Kuasai pertanyaan wawancara basis data, dari konsep SQL dasar hingga skenario desain sistem tingkat lanjut. Panduan mendalam ini mencakup semua yang Anda perlukan untuk sukses di wawancara DBMS dan meraih peran berikutnya.
Dario Radečić's photo

Dario Radečić

15 mnt

blogs

12 Alternatif ChatGPT Terbaik yang Bisa Anda Coba pada 2026

Artikel ini menyajikan daftar alternatif ChatGPT yang akan meningkatkan produktivitas Anda.
Javier Canales Luna's photo

Javier Canales Luna

14 mnt

Lihat SelengkapnyaLihat Selengkapnya