Divergence happens when both local and remote have new commits Git hasn't seen.
git status shows: "Your branch and 'origin/main' have diverged."
Options:
git pull --rebase — replay yours on top of remote (cleaner)
git pull (merge) — creates a merge commit
git fetch + inspect + decide
Prevention: git fetch and git rebase origin/main regularly.