##// END OF EJS Templates
Do not use osutil.c with python 2.4 and Windows (issue1364)...
Do not use osutil.c with python 2.4 and Windows (issue1364) Windows python 2.4 os.stat() reports times including DST offset, while osutil.c reports the correct value, which makes status() systematically compare files content. This bug is fixed in python 2.5. Using osutil.py instead of osutil.c is 4x times slower on large repositories but current code is completely unusable. Given few people are likely to use python 2.4 on Windows this solution was considered a good trade-off compared to more invasive solutions trying to address the offset issue.

File last commit:

r9284:4a1b24db default
r10521:bde1bb25 stable
Show More
test-repair-strip
44 lines | 969 B | text/plain | TextLexer
/ tests / test-repair-strip
Henrik Stuart
strip: make repair.strip transactional to avoid repository corruption...
r8073 #!/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
Mads Kiilerich
test-repair-strip: Don't rely on cat error message
r9284 if [ -f .hg/store/journal ]; then
sed -e 's/\.i[^\n]*/\.i/' .hg/store/journal
else
echo "(no journal)"
fi
Henrik Stuart
strip: make repair.strip transactional to avoid repository corruption...
r8073 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
Henrik Stuart
test: change repair strip test to illustrate manifest errors
r8293 echo b2 >> b
hg -q ci -m "b2" -A
Henrik Stuart
strip: make repair.strip transactional to avoid repository corruption...
r8073 echo c > c
hg -q ci -m "c" -A
Henrik Stuart
test: change repair strip test to illustrate manifest errors
r8293
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
Henrik Stuart
strip: make repair.strip transactional to avoid repository corruption...
r8073