Revert almost all of 5be434785317; add a test
Because of file copies, we should update the manifest dict only after
committing all files.
#!/bin/sh
#
# test for branch handling
#
# XXX: need more tests
hg init
echo a > a
echo b > b
hg ci -A -m 0 -d "1000000 0"
echo aa > a
echo bb > b
hg ci -m 1 -d "1000000 0"
hg tag -l foo
hg update 0
hg parents -b
# test update
hg update -b foo
hg parents
# test merge
hg update 0
echo c > c
hg ci -A -m 0.0 -d "1000000 0"
hg merge -b foo
hg parents -b
# re-test with more branches
hg update -C 0
echo d > d
hg ci -A -m 0.0 -d "1000000 0"
hg merge -b foo
hg parents -b