repo.status: also compare flags for files in the lookup list.
We might be able to do something smarter about this in dirstate.status
for files in normallookup state, but that would require some extra
care to keep backwards compatibility.
#!/bin/sh
#
# A B
#
# 3 4 3
# |\/| |\
# |/\| | \
# 1 2 1 2
# \ / \ /
# 0 0
#
# if the result of the merge of 1 and 2
# is the same in 3 and 4, no new manifest
# will be created and the manifest group
# will be empty during the pull
#
# (plus we test a failure where outgoing
# wrongly reported the number of csets)
#
hg init a
cd a
touch init
hg ci -A -m 0 -d "1000000 0"
touch x y
hg ci -A -m 1 -d "1000000 0"
hg update 0
touch x y
hg ci -A -m 2 -d "1000000 0"
hg merge 1
hg ci -A -m m1 -d "1000000 0"
#hg log
#hg debugindex .hg/store/00manifest.i
hg update -C 1
hg merge 2
hg ci -A -m m2 -d "1000000 0"
#hg log
#hg debugindex .hg/store/00manifest.i
cd ..
hg clone -r 3 a b
hg clone -r 4 a c
hg -R a outgoing b
hg -R a outgoing c
hg -R b outgoing c
hg -R c outgoing b
hg -R b pull a
hg -R c pull a