tests/test-merge5
author Greg Ward <greg-hg@gerg.ca>
Tue, 09 Mar 2010 21:22:01 -0500
changeset 10623 64e286c22f29
parent 6350 6aa4a3fa4e60
permissions -rwxr-xr-x
shrink-revlog: add "reverse postorder" and "postorder reverse" toposorts. Based on a patch by Benoit Boissinot, adapted to the pluggable sort algorithm design. toposort_reversepostorder() is a very good performer; it's designed to recreate what the revlog would have looked like if Mercurial had parent deltas now. toposort_postorderreverse() is unstable and very inconsistent, but perhaps with some work it could be made better.

#!/bin/sh

mkdir t
cd t
hg init
echo This is file a1 > a
echo This is file b1 > b
hg add a b
hg commit -m "commit #0" -d "1000000 0"
echo This is file b22 > b
hg commit -m"comment #1" -d "1000000 0"
hg update 0
rm b
hg commit -A -m"comment #2" -d "1000000 0"
mv a c
# in theory, we shouldn't need the "-y" below, but it prevents
# this test from hanging when "hg update" erroneously prompts the
# user for "keep or delete"
echo % should abort
hg update -y 1
mv c a
echo % should succeed
hg update -y 1

exit 0