Jak merge, tak rebase integrují změny z jedné větve do druhé, ale dělají to různě: merge zachovává historii s merge commitem, zatímco rebase přepisuje historii a vytváří lineární sekvenci. Pochopení rozdílu a kdy použít který je důležité.
Merge — zachovává historii (kombinuje)
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)
