view tests/test-issue522 @ 9827:4fe9ca519637

mdiff: fix diff -b/B/w on mixed whitespace hunks (issue127) Previous code was computing hunks then checking if these hunks could be ignored when taking whitespace/blank-lines options in accounts. This approach is simple but fails with hunks containing both whitespace and non-whitespace changes, the whole hunk is emitted while it can be mostly made of whitespace. The new version normalize the whitespaces before hunk generation, and test for blank-lines afterwards.
author Patrick Mezard <pmezard@gmail.com>
date Wed, 11 Nov 2009 18:31:42 +0100
parents 6c82beaaa11a
children
line wrap: on
line source

#!/bin/sh

# In the merge below, the file "foo" has the same contents in both
# parents, but if we look at the file-level history, we'll notice that
# the version in p1 is an ancestor of the version in p2.  This test
# makes sure that we'll use the version from p2 in the manifest of the
# merge revision.

hg init repo
cd repo

echo foo > foo
hg ci -qAm 'add foo'

echo bar >> foo
hg ci -m 'change foo'

hg backout -r tip -m 'backout changed foo'

hg up -C 0
touch bar
hg ci -qAm 'add bar'

hg merge --debug
hg debugstate | grep foo
hg st -A foo
hg ci -m 'merge'

hg manifest --debug | grep foo
hg debugindex .hg/store/data/foo.i