tests/test-globalopts
author Vadim Gelfer <vadim.gelfer@gmail.com>
Fri, 14 Jul 2006 11:17:22 -0700
changeset 2612 ffb895f16925
parent 2528 049f930f18c1
child 2831 0b9ac7dfcf56
permissions -rwxr-xr-x
add support for streaming clone. existing clone code uses pull to get changes from remote repo. is very slow, uses lots of memory and cpu. new clone code has server write file data straight to client, client writes file data straight to disk. memory and cpu used are very low, clone is much faster over lan. new client can still clone with pull, can still clone from older servers. new server can still serve older clients.

#!/bin/sh

hg init a
cd a
echo a > a
hg ci -A -d'1 0' -m a

cd ..

hg init b
cd b
echo b > b
hg ci -A -d'1 0' -m b

cd ..

hg clone a c
cd c
hg pull -f ../b
HGMERGE=merge hg merge

cd ..

echo %% -R/--repository
hg -R a tip
hg --repository b tip

echo %% abbrev of long option
hg --repo c tip

echo %% --cwd
hg --cwd a parents

echo %% -y/--noninteractive - just be sure it is parsed
hg --cwd a tip -q --noninteractive
hg --cwd a tip -q -y

echo %% -q/--quiet
hg -R a -q tip
hg -R b -q tip
hg -R c --quiet parents

echo %% -v/--verbose
hg --cwd c head -v
hg --cwd b tip --verbose

echo %% --config
hg --cwd c --config paths.quuxfoo=bar paths | grep -q quuxfoo && echo quuxfoo
hg --cwd c --config '' tip -q
hg --cwd c --config a.b tip -q
hg --cwd c --config a tip -q
hg --cwd c --config a.= tip -q
hg --cwd c --config .b= tip -q

echo %% --debug
hg --cwd c log --debug

echo %% --traceback
hg --cwd c --config x --traceback tip 2>&1 | grep -i 'traceback'

echo %% --time
hg --cwd a --time tip 2>&1 | grep '^Time:' | sed 's/[0-9][0-9]*/x/g'

echo %% --version
hg --version -q | sed 's/version [^)]*/version xxx/'

echo %% -h/--help
hg -h
hg --help

echo %% not tested: --debugger