view tests/test-imerge @ 6543:a6e2e60b34d0

convert: handle past or foreign partial svn copies Subversion allows revisions to be composed of subparts coming from revisions before the parent or from other part of the repository. There is no simple representation for these now, keep the changes but do not track their origins.
author Patrick Mezard <pmezard@gmail.com>
date Mon, 14 Apr 2008 22:31:34 +0200
parents bbfebf751ac8
children
line wrap: on
line source

#!/bin/sh

echo "[extensions]" >> $HGRCPATH
echo "imerge=" >> $HGRCPATH
HGMERGE=true
export HGMERGE

hg init base
cd base

echo foo > foo
echo bar > bar
hg ci -Am0 -d '0 0'

hg mv foo foo2
echo foo >> foo2
hg ci -m1 -d '1 0'

hg up -C 0
echo bar >> foo
echo bar >> bar
hg ci -m2 -d '2 0'

echo % start imerge
hg imerge

cat foo2
cat bar

echo % status -v
hg -v imerge st

echo % next
hg imerge next

echo % resolve and unresolve
hg imerge resolve foo
hg -v imerge st
hg imerge unresolve foo
hg -v imerge st

echo % merge next
hg --traceback imerge

echo % unresolve
hg imerge unres foo

echo % merge foo
hg imerge merge foo

echo % save
echo foo > foo2
hg imerge save ../savedmerge

echo % merge auto
hg up -C 1
hg --traceback imerge --auto
cat foo2

echo % load
hg up -C 0
hg imerge --traceback load ../savedmerge
cat foo2

hg ci -m'merged' -d '3 0'
hg tip -v

echo % nothing to merge -- tip
hg imerge

hg up 0
echo % nothing to merge
hg imerge

cd ..
hg -q clone -r 0 base clone
cd clone
echo % load unknown parent
hg imerge load ../savedmerge

exit 0