= Merge conflict
A <merge conflict> occurs when a <version-control merging> operation cannot automatically reconcile changes under its merge rules. For a typical three-way merge, the tool compares two revisions with their common base. Incompatible edits to the same region, or deletion on one side and modification on the other, can require a human decision.<git-merge in the Git documentation>[True merge, How conflicts are presented and How to resolve conflicts]{ref}
For example, the base contains `threshold=5`; one side changes it to `7` and the other to `9`. Choosing either value or a new value requires understanding the intended behavior. After editing the combined result, the resolver records that decision in <version control>. A textually conflict-free merge can still break a <function>'s contract, so successful automatic combination supplies weaker evidence than <software testing> of the integrated program.
Back to article page