##// END OF EJS Templates
mq: cleanup status if applied mq is stripped (issue1881)...
mq: cleanup status if applied mq is stripped (issue1881) stripping of applied mq patches leads to wrong state recorded in status file. find all mq patches that will be affected and clean up status file before strip.

File last commit:

r11637:64f284da stable
r11637:64f284da stable
Show More
test-mq-strip
71 lines | 1.1 KiB | text/plain | TextLexer
#!/bin/sh
. $TESTDIR/helpers.sh
echo "[extensions]" >> $HGRCPATH
echo "mq=" >> $HGRCPATH
teststrip() {
hg up -C $1
echo % before update $1, strip $2
hg parents
hg strip $2 | hidebackup
echo % after update $1, strip $2
hg parents
hg unbundle -q .hg/strip-backup/*
rm .hg/strip-backup/*
}
hg init test
cd test
echo foo > bar
hg ci -Ama
echo more >> bar
hg ci -Amb
echo blah >> bar
hg ci -Amc
hg up 1
echo blah >> bar
hg ci -Amd
echo final >> bar
hg ci -Ame
hg log
teststrip 4 4
teststrip 4 3
teststrip 1 4
teststrip 4 2
teststrip 4 1
teststrip null 4
hg log
hg up -C 2
hg merge 4
echo % before strip of merge parent
hg parents
hg strip 4 2>&1 | hidebackup
echo % after strip of merge parent
hg parents
#strip of applied mq should cleanup status file
hg up -C 3
echo fooagain >> bar
hg ci -mf
hg qimport -r tip:2
echo % applied patches before strip
hg qapplied
echo % stripping revision in queue
hg strip 3 | hidebackup
echo % applied patches after stripping rev in queue
hg qapplied
echo % stripping ancestor of queue
hg strip 1 | hidebackup
echo % applied patches after stripping ancestor of queue
hg qapplied