Reading a Conflict

The markers

<<<<<<< HEAD
the version already on your branch
=======
the version coming in
>>>>>>> feature/thing
  • between <<<<<<< and =======yours (HEAD, where you are)
  • between ======= and >>>>>>>theirs (what you are merging in)

The label after >>>>>>> tells you which branch it came from.

Resolving

The resolution is just editing: keep one side, keep both, or write something new. Delete all three marker lines when you are done — a leftover ======= is a syntax error in every language.

]c and [c jump between conflict hunks, so you can walk them rather than scroll.