Mercurial > hg
view tests/test-strip-cross @ 8071:9f14b66830a8
transaction: only delete journal on successful abort/commit
This solves that the journal file was always deleted when the transaction
was deleted, no matter whether the abort (rollback) succeeded or not.
Thus, never supporting a hg recover. The journal file is now only deleted
on close (commit) or a successful abort.
author | Henrik Stuart <henrik.stuart@edlund.dk> |
---|---|
date | Thu, 16 Apr 2009 15:41:25 +0200 |
parents | 8e7796a990c5 |
children | 12e5149cafca |
line wrap: on
line source
#!/bin/sh # test stripping of filelogs where the linkrev doesn't always increase echo '[extensions]' >> $HGRCPATH echo 'hgext.mq =' >> $HGRCPATH hg init orig cd orig hidefilename() { sed -e 's/saving bundle to .*strip-backup/saving bundle to strip-backup/' } commit() { hg up -qC null count=1 for i in "$@"; do for f in $i; do echo $count > $f done count=`expr $count + 1` done hg commit -qAm "$*" } # 2 1 0 2 0 1 2 commit '201 210' commit '102 120' '210' commit '021' commit '201' '021 120' commit '012 021' '102 201' '120 210' commit 'manifest-file' commit '102 120' '012 210' '021 201' commit '201 210' '021 120' '012 102' HGUSER=another-user; export HGUSER commit 'manifest-file' commit '012' 'manifest-file' cd .. hg clone -q -U -r -1 -r -2 -r -3 -r -4 -r -6 orig crossed for i in crossed/.hg/store/00manifest.i crossed/.hg/store/data/*.i; do echo $i hg debugindex $i echo done for i in 0 1 2 3 4; do hg clone -q -U --pull crossed $i echo "% Trying to strip revision $i" hg --cwd $i strip $i 2>&1 | hidefilename echo "% Verifying" hg --cwd $i verify echo done