Mercurial > hg
view tests/test-rebase-abort @ 8364:fa901423ac23
windows: avoid deleting non-empty reparse points
If a hg repository including working directory is a reparse point (directory
symlinked or a junction point), then using os.removedirs will remove the
reparse point erroneously. This is fixed by only removing directories if they
are empty.
author | Henrik Stuart <henrik.stuart@edlund.dk> |
---|---|
date | Tue, 12 May 2009 15:50:44 +0200 |
parents | 8766fee6f225 |
children | b345b1cc124f |
line wrap: on
line source
#!/bin/sh echo "[extensions]" >> $HGRCPATH echo "graphlog=" >> $HGRCPATH echo "rebase=" >> $HGRCPATH cleanoutput () { sed -e 's/\(Rebase status stored to\).*/\1/' \ -e 's/\(Rebase status restored from\).*/\1/' \ -e 's/\(saving bundle to \).*/\1/' } hg init a cd a echo 'c1' >common hg add common hg commit -d '0 0' -m "C1" echo 'c2' >>common hg commit -d '1 0' -m "C2" echo 'c3' >>common hg commit -d '2 0' -m "C3" hg update -C 1 echo 'l1' >>extra hg add extra hg commit -d '3 0' -m "L1" sed -e 's/c2/l2/' common > common.new mv common.new common hg commit -d '4 0' -m "L2" hg glog --template '{rev}: {desc}\n' echo echo '% Conflicting rebase' hg rebase -s 3 -d 2 2>&1 | cleanoutput echo echo '% Abort' hg rebase --abort 2>&1 | cleanoutput hg glog --template '{rev}: {desc}\n'