bdiff: normalize the diff (
issue1295)
When the common part of a diff can be moved forward, move it forward.
Otherwise we don't get deterministic results (it would depends on the way we
split for the recursion).
That way we get identical hunks when doing the same change, it helps to solve
issue1295 (inconsistent diffs on different side during a merge).
#!/bin/sh
echo "[extensions]" >> $HGRCPATH
echo "graphlog=" >> $HGRCPATH
addcommit () {
echo $1 > $1
hg add $1
hg commit -d "${2} 0" -u test -m $1
}
commit () {
hg commit -d "${2} 0" -u test -m $1
}
hg init a
cd a
addcommit "A" 0
addcommit "B" 1
echo "C" >> A
commit "C" 2
hg update -C 0
echo "D" >> A
commit "D" 3
echo
echo "% Merging a conflict araises"
hg merge
echo
echo "% Correct the conflict without marking the file as resolved"
echo "ABCD" > A
hg commit -m "Merged"
echo
echo "% Mark the conflict as resolved and commit"
hg resolve -m A
hg commit -m "Merged"
exit 0