Και το merge και το rebase ενσωματώνουν αλλαγές από έναν κλάδο σε άλλον, αλλά το κάνουν διαφορετικά: το merge διατηρεί το ιστορικό με ένα merge commit, ενώ το rebase ξαναγράφει το ιστορικό για να δημιουργήσει μια γραμμική ακολουθία. Η κατανόηση της διαφοράς και του πότε να χρησιμοποιήσετε το καθένα είναι σημαντική.
Merge — διατηρεί το ιστορικό (συνδυάζει)
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)
