Add a features list to branches.cache to detect caches of old hg versions.
The leading space in the written file makes sure that the feature list never
can match an existing version, even if the first feature can be read as hex.
Additionally old hg versions display the id with --debug, too.
#!/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