view tests/test-merge1 @ 566:b2c9b36bd639

repo.changes: fix duplicate changes -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 repo.changes: fix duplicate changes We need to discard the changed and added lists from dirstate.changes before adding to them when comparing manifests. Otherwise something that changed from rev->parent->working dir will appear twice. Bug spotted by Goffredo Baroncelli <kreijack@libero.it> manifest hash: 64c335e2fe6df6d1ce29d0903f16821c7566768f -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.0 (GNU/Linux) iD8DBQFCxcT3ywK+sNU5EO8RAivLAJ4gqbWfMnt+BdyGac/ZGduy2KbNegCgncPV D4ay6Qw9sIodEPjRebvk3GE= =AZd2 -----END PGP SIGNATURE-----
author mpm@selenic.com
date Fri, 01 Jul 2005 14:34:31 -0800
parents 5b22029b5aa2
children 7e4843b7efd2
line wrap: on
line source

#!/bin/sh -x

cat <<'EOF' > merge
#!/bin/sh
echo merging for `basename $1`
EOF
chmod +x merge

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

hg update 0
echo This is file c1 > c
hg add c
hg commit -t "commit #2" -d "0 0" -u user
echo This is file b1 > b
env HGMERGE=../merge hg update -m 1
# no merges expected
cd ..; /bin/rm -rf t

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

hg update 0
echo This is file c1 > c
hg add c
hg commit -t "commit #2" -d "0 0" -u user
echo This is file b2 > b
env HGMERGE=../merge hg update -m 1
# merge of b expected
cd ..; /bin/rm -rf t

mkdir t
cd t
hg init
echo This is file a1 > a
hg add a
hg commit -t "commit #0" -d "0 0" -u user
echo This is file b1 > b
hg add b
hg commit -t "commit #1" -d "0 0" -u user
echo This is file b22 > b
hg commit -t "commit #2" -d "0 0" -u user
hg update 1
echo This is file c1 > c
hg add c
hg commit -t "commit #3" -d "0 0" -u user
cat b
echo This is file b22 > b
env HGMERGE=../merge hg update -m 2
# merge expected!
cd ..; /bin/rm -rf t

mkdir t
cd t
hg init
echo This is file a1 > a
hg add a
hg commit -t "commit #0" -d "0 0" -u user
echo This is file b1 > b
hg add b
hg commit -t "commit #1" -d "0 0" -u user
echo This is file b22 > b
hg commit -t "commit #2" -d "0 0" -u user
hg update 1
echo This is file c1 > c
hg add c
hg commit -t "commit #3" -d "0 0" -u user
echo This is file b33 > b
env HGMERGE=../merge hg update -m 2
# merge of b expected
cd ..; /bin/rm -rf t