make revlog.addgroup pass its file handles to addrevision
This should fix issue255.
It looks like the problem there happens when addgroup calls addrevision
to add a full revision, and addrevision decides to split the index file
into a .i/.d pair. Since addgroup has an open file handle for the
index file, the renaming of the new .i file to its final name fails on
windows.
#!/bin/sh
set -e
mkdir test
cd test
echo foo>foo
hg init
hg addremove
hg commit -m "1"
hg verify
hg clone . ../branch
cd ../branch
hg co
echo bar>>foo
hg commit -m "2"
cd ../test
hg pull ../branch
hg verify
hg co
cat foo
hg manifest