view tests/test-rename-after-merge @ 6297:fed1a9c22076

dirstate.remove: during merges, remember the previous file state We encode the previous state as a negative file size (AFAICS, previous versions of hg always have size == 0 when state == 'r'). We save the state of 'm'erged and dirty files, because they're the two states that indicate that a file has to be committed on a merge to correctly record per-file history.
author Alexis S. L. Carvalho <alexis@cecm.usp.br>
date Tue, 18 Mar 2008 04:07:39 -0300
parents 784eadabd985
children d821ea464465
line wrap: on
line source

#!/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