tests/test-rename-after-merge
author Steve Borho <steve@borho.org>
Fri, 17 Sep 2010 12:44:35 -0500
branchstable
changeset 12317 ed639917c825
parent 7689 d821ea464465
permissions -rwxr-xr-x
test-eol-update: record new results as correct Changeset 0852da25a31b changed the result of this test. The 'hg update 0' command, which causes a merge of modified a.txt, now leaves a.txt in the EOLN format specified by .hgeol as it was committed in revision 0. Previously, it used the .hgeol contents from the working directory before the update.

#!/bin/sh

# Test issue 746: renaming files brought by the
# second parent of a merge was broken.

echo % create source repository
hg init t
cd t
echo a > a
hg ci -Am a
cd ..

echo % fork source repository
hg clone t t2
cd t2
echo b > b
hg ci -Am b

echo % update source repository
cd ../t
echo a >> a
hg ci -m a2

echo % merge repositories
hg pull ../t2
hg merge
hg st

echo % rename b as c
hg mv b c
hg st
echo % rename back c as b
hg mv c b
hg st
cd ..

# Test issue 1476: renaming a first parent file into
# another first parent file while none of them belong to
# the second parent was broken
echo % test issue 1476
hg init repo1476
cd repo1476
echo a > a
hg ci -Am adda
echo b1 > b1
echo b2 > b2
hg ci -Am changea
hg up -C 0
echo c1 > c1
echo c2 > c2
hg ci -Am addcandd
echo % merge heads
hg merge
hg mv -Af c1 c2
echo % commit issue 1476
hg ci -m merge
hg log -r tip -C -v | grep copies
hg rollback
hg up -C .
echo % merge heads again
hg merge
hg mv -Af b1 b2
echo % commit issue 1476 with a rename on the other side
hg ci -m merge
hg log -r tip -C -v | grep copies