view tests/test-merge1 @ 7006:92d44ec32430

branch: added more support for named branches hg branch now has a -C (--clean) option, to reset the current (dirstate) branch to the branch of the last commit (first parent).
author Sune Foldager <cryo@cyanite.org>
date Mon, 08 Sep 2008 12:55:27 +0200
parents ccfe423d3d0a
children a6477aa893b8
line wrap: on
line source

#!/bin/sh

cat <<EOF > merge
import sys, os
print "merging for", os.path.basename(sys.argv[1])
EOF
HGMERGE="python ../merge"; export HGMERGE

mkdir t
cd t
hg init
echo This is file a1 > a
hg add a
hg commit -m "commit #0" -d "1000000 0"
echo This is file b1 > b
hg add b
hg commit -m "commit #1" -d "1000000 0"

hg update 0
echo This is file c1 > c
hg add c
hg commit -m "commit #2" -d "1000000 0"
echo This is file b1 > b
echo %% no merges expected
hg merge 1
hg diff --nodates
hg status
cd ..; rm -r t

mkdir t
cd t
hg init
echo This is file a1 > a
hg add a
hg commit -m "commit #0" -d "1000000 0"
echo This is file b1 > b
hg add b
hg commit -m "commit #1" -d "1000000 0"

hg update 0
echo This is file c1 > c
hg add c
hg commit -m "commit #2" -d "1000000 0"
echo This is file b2 > b
echo %% merge should fail
hg merge 1
echo %% merge of b expected
hg merge -f 1
hg diff --nodates
hg status
cd ..; rm -r t
echo %%

mkdir t
cd t
hg init
echo This is file a1 > a
hg add a
hg commit -m "commit #0" -d "1000000 0"
echo This is file b1 > b
hg add b
hg commit -m "commit #1" -d "1000000 0"
echo This is file b22 > b
hg commit -m "commit #2" -d "1000000 0"
hg update 1
echo This is file c1 > c
hg add c
hg commit -m "commit #3" -d "1000000 0"

echo 'Contents of b should be "this is file b1"'
cat b

echo This is file b22 > b
echo %% merge fails
hg merge 2
echo %% merge expected!
hg merge -f 2
hg diff --nodates
hg status
cd ..; rm -r t

mkdir t
cd t
hg init
echo This is file a1 > a
hg add a
hg commit -m "commit #0" -d "1000000 0"
echo This is file b1 > b
hg add b
hg commit -m "commit #1" -d "1000000 0"
echo This is file b22 > b
hg commit -m "commit #2" -d "1000000 0"
hg update 1
echo This is file c1 > c
hg add c
hg commit -m "commit #3" -d "1000000 0"
echo This is file b33 > b
echo %% merge of b should fail
hg merge 2
echo %% merge of b expected
hg merge -f 2
hg diff --nodates
hg status