merge: introduce tool.check parameter
tool.check is a list of check options, and can be used in place of
tool.checkchanged and tool.checkconflicts:
Equivalences:
tool.checkchanged = yes
tool.checkconflicts = no
tool.check = changed
tool.checkchanged = no
tool.checkconflicts = yes
tool.check = conflicts
tool.checkchanged = yes
tool.checkconflicts = yes
tool.check = changed, conflicts
Add _toollist() wrapper for ui.configlist() to implement this consistently.
checkchanged and checkconflicts are still supported, but check is
preferred for implementing new check options.
#!/bin/sh
hg init repo
cd repo
echo a > a
hg ci -qAm 'add a'
echo b > b
hg ci -qAm 'add b'
hg up -qC 0
hg rm a
hg ci -m 'rm a'
hg up -qC 1
rm a
echo '% local deleted a file, remote removed'
hg merge # should fail, since there are deleted files
hg -v merge --force
echo % should show a as removed
hg st
hg ci -m merge
echo % manifest. should not have a:
hg manifest