##// END OF EJS Templates
hgweb/sshserver: extract capabilities for easier modification
hgweb/sshserver: extract capabilities for easier modification

File last commit:

r9284:4a1b24db default
r9713:d193cc97 default
Show More
test-repair-strip
44 lines | 969 B | text/plain | TextLexer
#!/bin/sh
echo "[extensions]" >> $HGRCPATH
echo "mq=">> $HGRCPATH
teststrip() {
hg -q up -C $1
echo % before update $1, strip $2
hg parents
chmod -$3 $4
hg strip $2 2>&1 | sed 's/\(saving bundle to \).*/\1/' | sed 's/Permission denied.*\.hg\/store\/\(.*\)/Permission denied \.hg\/store\/\1/'
echo % after update $1, strip $2
chmod +$3 $4
hg verify
echo % journal contents
if [ -f .hg/store/journal ]; then
sed -e 's/\.i[^\n]*/\.i/' .hg/store/journal
else
echo "(no journal)"
fi
ls .hg/store/journal >/dev/null 2>&1 && hg recover
ls .hg/strip-backup/* >/dev/null 2>&1 && hg unbundle -q .hg/strip-backup/*
rm -rf .hg/strip-backup
}
hg init test
cd test
echo a > a
hg -q ci -m "a" -A
echo b > b
hg -q ci -m "b" -A
echo b2 >> b
hg -q ci -m "b2" -A
echo c > c
hg -q ci -m "c" -A
teststrip 0 2 w .hg/store/data/b.i
teststrip 0 2 r .hg/store/data/b.i
teststrip 0 2 w .hg/store/00manifest.i