Git Rebase vs Merge
The rebase vs merge debate is older than most codebases. Here is a practical take.
Merge
Preserves exactly what happened: git merge feature creates a merge commit. History shows branching reality.
Rebase
Rewrites commits to appear sequential: git rebase main replays feature commits on top of main. History reads like a story.
Rule of Thumb
Rebase local branches before sharing. Merge when integrating shared work. Never rebase commits others have based work on.