Mercurial > hg
view tests/test-branch-option @ 11322:3d6915f5a2bb
improve --branch processing (and differentiate from # syntax)
Previously #foo and --branch foo were handled identically.
The behavior of #foo hasn't changed, but --branch now works like this:
1) If branchmap is not supported on the remote, the operation fails.
2) If branch is '.', substitute with branch of the working dir parent.
3) If branch exists remotely, its heads are expanded.
4) Otherwise, the operation fails.
Tests have been added for the new cases.
author | Sune Foldager <cryo@cyanite.org> |
---|---|
date | Thu, 10 Jun 2010 12:46:09 +0200 |
parents | deaeb2d84d8a |
children |
line wrap: on
line source
#!/bin/sh # test branch selection options hg init branch cd branch hg branch a echo a > foo hg ci -d '0 0' -Ama echo a2 > foo hg ci -d '0 0' -ma2 hg up 0 hg branch c echo c > foo hg ci -d '0 0' -mc hg tag -l z cd .. hg clone -r 0 branch branch2 cd branch2 hg up 0 hg branch b echo b > foo hg ci -d '0 0' -mb hg up 0 hg --encoding utf-8 branch æ echo ae1 > foo hg ci -d '0 0' -mae1 hg up 0 hg --encoding utf-8 branch -f æ echo ae2 > foo hg ci -d '0 0' -mae2 hg up 0 hg branch -f b echo b2 > foo hg ci -d '0 0' -mb2 echo unknown branch and fallback hg in -qbz hg in -q ../branch#z hg out -qbz echo in rev c branch a hg in -qr c ../branch#a hg in -qr c -b a echo out branch . hg out -q ../branch#. hg out -q -b . echo out branch . non-ascii hg --encoding utf-8 up æ hg --encoding latin1 out -q ../branch#. hg --encoding latin1 out -q -b . echo clone branch b cd .. hg clone branch2#b branch3 hg -q -R branch3 heads b hg -q -R branch3 parents rm -rf branch3 echo clone rev a branch b hg clone -r a branch2#b branch3 hg -q -R branch3 heads b hg -q -R branch3 parents rm -rf branch3