Mercurial > hg
view tests/test-merge1 @ 9717:68a1b9d0663e
update: allow branch crossing without -c or -C, with no uncommitted changes
Update will now allow crossing branches within the same named branch,
when given a specific revision, if the working dir is clean, without
requiring the -c or -C option. Abort if no revision is given and
this would cross branches. Minor change to abort message if
uncommitted changes are found.
Modify test-update-branches and output to reflect the altered case. Modify
test-merge5.out to reflect the altered case. Modify
test-up-local-change.out with new message.
author | Stuart W Marks <smarks@smarks.org> |
---|---|
date | Thu, 05 Nov 2009 10:53:59 +0100 |
parents | 6d36fc70754e |
children |
line wrap: on
line source
#!/bin/sh cat <<EOF > merge import sys, os try: import msvcrt msvcrt.setmode(sys.stdout.fileno(), os.O_BINARY) msvcrt.setmode(sys.stderr.fileno(), os.O_BINARY) except ImportError: pass 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 -P 1 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