Menu
CoddyTech

Three-Way Merge

Termasuk bagian Kontrol Versi dalam perjalanan Terminal di Coddy. Pelajaran 36 dari 58.

Jika kedua cabang telah bergerak secara mandiri, Git tidak bisa langsung melakukan fast-forward. Sebagai gantinya, Git melakukan penggabungan tiga arah: Git melihat leluhur bersama dan ujung kedua cabang, lalu menghasilkan commit baru yang menggabungkan keduanya.

Commit baru ini adalah merge commit. Commit ini memiliki dua parent, satu dari setiap branch:

git switch main
git merge feature -m "Merge feature"

Flag -m memberikan pesan merge commit secara langsung, sehingga Git tidak membuka editor.

Sebagian besar waktu, Git dapat menggabungkan perubahan dari kedua cabang secara otomatis, selama perubahan tersebut menyentuh bagian file yang berbeda. Konflik hanya terjadi ketika kedua cabang mengubah baris yang sama. Hal ini akan dibahas dalam pelajaran berikutnya.

challenge icon

Tantangan

Sedang

Kamu memulai di folder baru dengan top.txt (konten: a) dan bottom.txt (konten: b).

Inisialisasi repo, buat commit pertama, lalu:

  1. Buat branch feature dan tambahkan baris added ke top.txt; commit.
  2. Beralih ke main dan tambahkan baris added ke bottom.txt; commit.
  3. Merge feature ke main dengan pesan Merge feature.

Cetak jumlah commit yang dapat dijangkau dari HEAD menggunakan git rev-list --count HEAD. Jumlah yang diharapkan adalah 4 (awal + feature + main + merge).

Coba sendiri

Terminal
quiz iconUji dirimu

Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.

Semua pelajaran di Kontrol Versi

Latihan sendiri: Playground Terminal