localrepo: add optional validation (defaults to off) for incoming changes
This verifies that all manifests are present for incoming changes,
and all files for those manifests are also present. This is a simple
first-pass, and could be better, but seems like a valuable thing to
have, as I've seen pushes in the past that propagated revlog corruption.
#!/bin/sh
STRIP=`pwd`
hg init test
cd test
cat > .hg/hgrc <<EOF
[server]
validate=1
EOF
echo alpha > alpha
echo beta > beta
hg addr
hg ci -m 1
cd ..
hg clone test test-clone
cd test-clone
cp .hg/store/data/beta.i tmp
echo blah >> beta
hg ci -m '2 (corrupt)'
mv tmp .hg/store/data/beta.i
hg push 2>&1 | sed "s%$STRIP%test-root%"