Merge: Menggabungkan Branch (Fast-Forward)
Menggabungkan pekerjaan ke main, mengenali fast-forward, dan membersihkan branch yang selesai.
Menggabungkan pekerjaan
Fitur di branch sudah selesai dan diuji. Saatnya memasukkannya ke main. Aturannya: berpindah dulu ke branch penerima, lalu merge branch sumber ke dalamnya.
git switch main
git merge fitur-login
Fast-forward
Bila main tidak berubah sejak kamu membuat branch, riwayatnya masih satu garis lurus. Git tidak perlu membuat commit penggabungan; ia cukup menggeser penunjuk main maju ke ujung branch fitur:
sebelum: c1 <- c2 (main)
\
c3 <- c4 (fitur-login)
sesudah: c1 <- c2 <- c3 <- c4 (main, fitur-login)
Keluarannya memuat kata Fast-forward:
Updating 3f2a1b9..8c4d2e1
Fast-forward
login.html | 1 +
1 file changed, 1 insertion(+)
Riwayat tetap linear dan bersih. Tidak ada konflik yang mungkin terjadi karena main tidak berubah.
Membersihkan setelah merge
Setelah branch fitur digabung, ia sudah tidak diperlukan; semua commitnya sudah ada di main. Hapus agar daftar branch tidak penuh:
git branch -d fitur-login
Opsi -d aman: Git menolak menghapus branch yang belum digabung (supaya pekerjaan tidak hilang). -D memaksa; gunakan hanya bila yakin.
Melihat hasilnya
git log --oneline --graph --all
Mencegah merge yang tak diinginkan
git merge --ff-only fitur hanya mau berjalan bila fast-forward memungkinkan; selain itu ia gagal. Berguna agar riwayat tetap linear.
Cek dulu apa yang akan masuk
Sebelum merge, lihat commit yang akan dibawa: git log main..fitur-login --oneline, dan perubahan berkasnya: git diff main fitur-login.