view tests/test-rebase-conflicts @ 8048:d22432bdcba1

convert/cvs: delay CVS log parsing after initialization (issue1581/2) Source and destination constructors should be fast so configurations issues are hit quickly, including authentication and filemap/authormap/splicemap issues. Delaying might be a problem if the remove side disconnects idle connections while the log is being read. It did not happen when converting openafs repository, where log retrieval took at least 10mn.
author Patrick Mezard <pmezard@gmail.com>
date Sat, 11 Apr 2009 21:17:11 +0200
parents 45495d784ad6
children 8766fee6f225
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' -u test -m "C1"

echo 'c2' >>common
hg commit -d '1 0' -u test -m "C2"

echo 'c3' >>common
hg commit -d '2 0' -u test -m "C3"

hg update -C 1
echo 'l1' >>extra
hg add extra
hg commit -d '3 0' -u test -m "L1"

sed -e 's/c2/l2/' common > common.new
mv common.new common
hg commit -d '4 0' -u test -m "L2"

echo 'l3' >> extra2
hg add extra2
hg commit -d '5 0' -u test -m "L3"

hg glog  --template '{rev}: {desc}\n'

echo
echo '% Try to call --continue'
hg rebase --continue

echo
echo '% Conflicting rebase'
hg rebase -s 3 -d 2

echo
echo '% Try to continue without solving the conflict'
hg rebase --continue 

echo
echo '% Conclude rebase'
echo 'resolved merge' >common
hg resolve -m common
hg rebase --continue 2>&1 | cleanoutput

hg glog  --template '{rev}: {desc}\n'

echo
echo '% Check correctness'
echo '  - Rev. 0'
hg cat -r 0 common

echo '  - Rev. 1'
hg cat -r 1 common

echo '  - Rev. 2'
hg cat -r 2 common

echo '  - Rev. 3'
hg cat -r 3 common

echo '  - Rev. 4'
hg cat -r 4 common

echo '  - Rev. 5'
hg cat -r 5 common