view tests/test-issue322 @ 10251:a19d2993385d stable

subrepo: fix merging of already merged subrepos (issue1986) This fixes a bug seen when merging a main repo which contains a subrepo when both repos have been merged before. Each repo (main and sub) has two branches, both of which have been merged before. In a subrepo, if the revision to merge to is an ancestor of the current rev, then the merge should be a noop. Test provided by Steve Losh.
author Benoit Boissinot <benoit.boissinot@ens-lyon.org>
date Fri, 15 Jan 2010 21:08:04 +0100
parents 1de6e7e1bb9f
children
line wrap: on
line source

#!/bin/sh
# http://mercurial.selenic.com/bts/issue322

echo % file replaced with directory

hg init a
cd a
echo a > a
hg commit -Ama
rm a
mkdir a
echo a > a/a

echo % should fail - would corrupt dirstate
hg add a/a

cd ..

echo % directory replaced with file

hg init c
cd c
mkdir a
echo a > a/a
hg commit -Ama

rm -r a
echo a > a

echo % should fail - would corrupt dirstate
hg add a

cd ..

echo % directory replaced with file

hg init d
cd d
mkdir b
mkdir b/c
echo a > b/c/d
hg commit -Ama
rm -r b
echo a > b

echo % should fail - would corrupt dirstate
hg add b

exit 0