Scalanie trójstronne, w którym dwa zestawy zmian w jednym pliku podstawowym są scalane podczas ich stosowania, w przeciwieństwie do stosowania jednego, a następnie scalania wyniku z drugim.
Na przykład wprowadzenie dwóch zmian, w których linia jest dodana w tym samym miejscu, można zinterpretować jako dwie zmiany, a nie zmianę jednej linii.
Na przykład
plik a został zmodyfikowany przez dwie osoby, jedną dodającą łosia, drugą dodającą mysz.
#File a
dog
cat
#diff b, a
dog
+++ mouse
cat
#diff c, a
dog
+++ moose
cat
Teraz, jeśli połączymy zestawy zmian podczas ich stosowania, otrzymamy (3-way merge)
#diff b and c, a
dog
+++ mouse
+++ moose
cat
Ale jeśli zastosujemy b, to spójrz na zmianę z b na c, będzie wyglądać tak, jakbyśmy po prostu zmienili „u” na „o” (scalanie dwukierunkowe)
#diff b, c
dog
--- mouse
+++ moose
cat