tests/test-double-merge
author Adrian Buehlmann <adrian@cadifra.com>
Fri, 28 May 2010 17:28:34 +0200
changeset 11232 97f6d2a02c1f
parent 8834 6d36fc70754e
permissions -rwxr-xr-x
util.copyfiles: don't try os_link() again if it failed before If the os_link() call on the first file in the directory fails [1], we switch mode to using shutil.copy() for all remaining files. [1] happens for example on Windows for every file when cloning from a UNC path without specifying --pull.

#!/bin/sh

hg init repo
cd repo

echo line 1 > foo
hg ci -qAm 'add foo' -d "1000000 0"

# copy foo to bar and change both files
hg cp foo bar
echo line 2-1 >> foo
echo line 2-2 >> bar
hg ci -m 'cp foo bar; change both' -d "1000000 0"

# in another branch, change foo in a way that doesn't conflict with
# the other changes
hg up -qC 0
echo line 0 > foo
hg cat foo >> foo
hg ci -m 'change foo' -d "1000000 0"

# we get conflicts that shouldn't be there
hg merge -P
hg merge --debug

echo "-- foo --"
cat foo

echo "-- bar --"
cat bar