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
touch unknown
touch a
hg add a
hg ci -m "1" -d "1000000 0"
touch b
hg add b
hg ci -m "2" -d "1000000 0"
echo %% Should show unknown
hg status
hg revert -r 0 --all
echo %% Should show unknown and b removed
hg status
echo %% Should show a and unknown
ls