tests/test-issue522
author Alexis S. L. Carvalho <alexis@cecm.usp.br>
Sat, 01 Sep 2007 02:49:18 -0300
changeset 5279 2dbd750b3ddd
parent 5210 90d9ec0dc69d
permissions -rwxr-xr-x
convert: clear the dirstate before a conversion, invalidate it afterwards Clearing it before the conversion protects us from whatever data were there (file copies in particular). Invalidating it after the conversion avoids writing a possibly inconsistent dirstate to disk.

#!/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 -d '0 0' -qAm 'add foo'

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

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

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

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

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