Kedua-dua merge dan rebase mengintegrasikan perubahan daripada satu branch ke branch lain, tetapi ia melakukannya secara berbeza: merge memelihara sejarah dengan satu merge commit, manakala rebase menulis semula sejarah untuk mencipta jujukan linear. Memahami perbezaan dan bila menggunakan setiap satu adalah penting.
Merge — memelihara sejarah (menggabungkan)
main: A───B───C───────M ← M is a MERGE COMMIT (two parents)
\ /
feature: D───E
→ git merge feature: creates M combining the branches
✓ Preserves the actual history (shows the branch existed, when it merged)
✗ History has merge commits (can look cluttered with many merges)
