convert: clear the dirstate before a conversion, invalidate it afterwards
Clearing it before the conversion protects us from whatever data were
there (file copies in particular).
Invalidating it after the conversion avoids writing a possibly
inconsistent dirstate to disk.
#!/bin/sh
hg init a
cd a
hg init b
echo x > b/x
echo '# should print nothing'
hg add b
hg st
echo '# should fail'
hg st b/x
hg add b/x
echo '# should fail'
hg add b b/x
hg st
echo '# should arguably print nothing'
hg st b
echo a > a
hg ci -Ama a
echo '# should fail'
hg mv a b
hg st