Mercurial > hg
view tests/test-convert-splicemap @ 9954:d6a307719ccb stable
fix bug in prepush logic involving merge changesets
When creating new branches and merging them into existing ones, you would
sometimes be able to push some changesets (the existing branches) without using
--force, even when that creates a new head on the remote.
A test which triggers the error has been added.
author | Sune Foldager <cryo@cyanite.org> |
---|---|
date | Mon, 30 Nov 2009 14:58:52 +0100 |
parents | 5b7da468531b |
children | bb5ea66789e3 |
line wrap: on
line source
#!/bin/sh echo "[extensions]" >> $HGRCPATH echo "convert=" >> $HGRCPATH echo 'hgext.graphlog =' >> $HGRCPATH glog() { hg glog --template '{rev} "{desc|firstline}" files: {files}\n' "$@" } hg init repo1 cd repo1 echo a > a hg ci -Am adda echo b > b echo a >> a hg ci -Am addb PARENTID1=`hg id --debug -i` echo c > c hg ci -Am addc PARENTID2=`hg id --debug -i` cd .. hg init repo2 cd repo2 echo b > a echo d > d hg ci -Am addaandd CHILDID1=`hg id --debug -i` echo d >> d hg ci -Am changed CHILDID2=`hg id --debug -i` echo e > e hg ci -Am adde cd .. echo '% test invalid splicemap' cat > splicemap <<EOF $CHILDID2 EOF hg convert --splicemap splicemap repo2 repo1 echo '% splice repo2 on repo1' cat > splicemap <<EOF $CHILDID1 $PARENTID1 $CHILDID2 $PARENTID2,$CHILDID1 EOF hg clone repo1 target1 hg convert --splicemap splicemap repo2 target1 glog -R target1