A merge conflict is not an error — it is git asking a question: "both branches changed this line; which version do you want?"
Reading the markers
<<<<<<< HEAD color: blue; ← your branch ======= color: red; ← their branch >>>>>>> feature/theme
Fixing it
- Open each conflicted file (git status lists them)
- In VS Code, click Accept Current / Accept Incoming / Accept Both — or hand-edit to combine, deleting ALL marker lines
git add .thengit commit— done
The escape hatch
git merge --abort # undo everything, back to before the merge
Knowing this exists removes the panic — you cannot destroy work with a conflict.
Prevention
- Pull main into your branch daily — small conflicts beat giant ones
- Keep branches short-lived (days, not weeks)
- Don't reformat whole files in feature branches (formatting diffs = conflict factories)