Mercurial > hg
view tests/test-rebase-rename @ 8564:6b9ec23b09fc
named branches: improve pre-push logic (issue736)
Each named branch is considered separately, and the push is allowed if
no new branch heads are created for any named branch to be pushed.
Due to some tests's use of --debug, their output will change after this
addition. This has been fixed as well.
Co-contributor: Henrik Stuart <henrik.stuart@edlund.dk>
author | Sune Foldager <cryo@cyanite.org> |
---|---|
date | Sat, 23 May 2009 17:04:31 +0200 |
parents | b969611064ae |
children | b345b1cc124f |
line wrap: on
line source
#!/bin/sh echo "[extensions]" >> $HGRCPATH echo "rebase=" >> $HGRCPATH echo "[diff]" >> $HGRCPATH echo "git=1" >> $HGRCPATH BASE=`pwd` cleanoutput () { sed -e 's/\(Rebase status stored to\).*/\1/' \ -e 's/\(Rebase status restored from\).*/\1/' \ -e 's/\(saving bundle to \).*/\1/' } hg init repo1 cd repo1 echo "a">a hg commit -Am "A" --date '0 0' echo "b"> b hg commit -Am "B" --date '1 0' hg up -C 0 hg mv a a-renamed hg commit -m 'rename A' --date '2 0' echo echo '% Rename is tracked' hg log -p -r tip --template '{rev}:{desc}\n' echo '% Rebase the revision containing the rename' hg rebase -s 2 -d 1 --quiet 2>&1 | cleanoutput echo echo '% Rename is not lost' hg log -p -r tip --template '{rev}:{desc}\n' cd $BASE rm -rf repo1 hg init repo1 cd repo1 echo "a">a hg commit -Am "A" --date '0 0' echo "b"> b hg commit -Am "B" --date '1 0' hg up -C 0 hg cp a a-copied hg commit -m 'copy A' --date '2 0' echo echo '% Copy is tracked' hg log -p -r tip --template '{rev}:{desc}\n' echo '% Rebase the revision containing the copy' hg rebase -s 2 -d 1 --quiet 2>&1 | cleanoutput echo echo '% Copy is not lost' hg log -p -r tip --template '{rev}:{desc}\n'