test-alias.t
722 lines
| 17.7 KiB
| text/troff
|
Tads3Lexer
/ tests / test-alias.t
|
r13434 | $ HGFOO=BAR; export HGFOO | ||
|
r11814 | $ cat >> $HGRCPATH <<EOF | ||
> [alias] | ||||
|
r15233 | > # should clobber ci but not commit (issue2993) | ||
> ci = version | ||||
|
r11814 | > myinit = init | ||
|
r37152 | > myinit:doc = This is my documented alias for init. | ||
> myinit:help = [OPTIONS] [BLA] [BLE] | ||||
|
r21556 | > mycommit = commit | ||
|
r37152 | > mycommit:doc = This is my alias with only doc. | ||
|
r16609 | > optionalrepo = showconfig alias.myinit | ||
|
r11814 | > cleanstatus = status -c | ||
|
r37152 | > cleanstatus:help = [ONLYHELPHERE] | ||
|
r11814 | > unknown = bargle | ||
> ambiguous = s | ||||
> recursive = recursive | ||||
|
r22159 | > disabled = email | ||
|
r11814 | > nodefinition = | ||
|
r21569 | > noclosingquotation = ' | ||
|
r11814 | > no--cwd = status --cwd elsewhere | ||
> no-R = status -R elsewhere | ||||
> no--repo = status --repo elsewhere | ||||
> no--repository = status --repository elsewhere | ||||
|
r18693 | > no--config = status --config a.config=1 | ||
|
r11814 | > mylog = log | ||
> lognull = log -r null | ||||
|
r37152 | > lognull:doc = Logs the null rev | ||
> lognull:help = foo bar baz | ||||
|
r11814 | > shortlog = log --template '{rev} {node|short} | {date|isodate}\n' | ||
|
r14265 | > positional = log --template '{\$2} {\$1} | {date|isodate}\n' | ||
|
r11814 | > dln = lognull --debug | ||
|
r37152 | > recursivedoc = dln | ||
> recursivedoc:doc = Logs the null rev in debug mode | ||||
|
r11814 | > nousage = rollback | ||
> put = export -r 0 -o "\$FOO/%R.diff" | ||||
|
r16965 | > blank = !printf '\n' | ||
> self = !printf '\$0\n' | ||||
> echoall = !printf '\$@\n' | ||||
> echo1 = !printf '\$1\n' | ||||
> echo2 = !printf '\$2\n' | ||||
> echo13 = !printf '\$1 \$3\n' | ||||
|
r22158 | > echotokens = !printf "%s\n" "\$@" | ||
|
r16965 | > count = !hg log -r "\$@" --template=. | wc -c | sed -e 's/ //g' | ||
> mcount = !hg log \$@ --template=. | wc -c | sed -e 's/ //g' | ||||
|
r11814 | > rt = root | ||
|
r20117 | > tglog = log -G --template "{rev}:{node|short}: '{desc}' {branches}\n" | ||
|
r12932 | > idalias = id | ||
> idaliaslong = id | ||||
> idaliasshell = !echo test | ||||
> parentsshell1 = !echo one | ||||
> parentsshell2 = !echo two | ||||
|
r16965 | > escaped1 = !printf 'test\$\$test\n' | ||
> escaped2 = !sh -c 'echo "HGFOO is \$\$HGFOO"' | ||||
> escaped3 = !sh -c 'echo "\$1 is \$\$\$1"' | ||||
> escaped4 = !printf '\$\$0 \$\$@\n' | ||||
|
r21556 | > exit1 = !sh -c 'exit 1' | ||
|
r11814 | > | ||
> [defaults] | ||||
> mylog = -q | ||||
> lognull = -q | ||||
> log = -v | ||||
> EOF | ||||
basic | ||||
$ hg myinit alias | ||||
|
r37152 | help | ||
$ hg help -c | grep myinit | ||||
|
r40450 | myinit This is my documented alias for init. | ||
|
r37152 | $ hg help -c | grep mycommit | ||
|
r40450 | mycommit This is my alias with only doc. | ||
|
r37152 | $ hg help -c | grep cleanstatus | ||
|
r40450 | [1] | ||
|
r37152 | $ hg help -c | grep lognull | ||
|
r40450 | lognull Logs the null rev | ||
|
r37152 | $ hg help -c | grep dln | ||
|
r40450 | [1] | ||
|
r37152 | $ hg help -c | grep recursivedoc | ||
|
r40450 | recursivedoc Logs the null rev in debug mode | ||
|
r37152 | $ hg help myinit | ||
hg myinit [OPTIONS] [BLA] [BLE] | ||||
alias for: hg init | ||||
This is my documented alias for init. | ||||
defined by: * (glob) | ||||
*/* (glob) (?) | ||||
*/* (glob) (?) | ||||
*/* (glob) (?) | ||||
options: | ||||
-e --ssh CMD specify ssh command to use | ||||
--remotecmd CMD specify hg command to run on the remote side | ||||
--insecure do not verify server certificate (ignoring web.cacerts | ||||
config) | ||||
(some details hidden, use --verbose to show complete help) | ||||
$ hg help mycommit | ||||
hg mycommit [OPTION]... [FILE]... | ||||
alias for: hg commit | ||||
This is my alias with only doc. | ||||
defined by: * (glob) | ||||
*/* (glob) (?) | ||||
*/* (glob) (?) | ||||
*/* (glob) (?) | ||||
options ([+] can be repeated): | ||||
-A --addremove mark new/missing files as added/removed before | ||||
committing | ||||
--close-branch mark a branch head as closed | ||||
--amend amend the parent of the working directory | ||||
-s --secret use the secret phase for committing | ||||
-e --edit invoke editor on commit messages | ||||
-i --interactive use interactive mode | ||||
-I --include PATTERN [+] include names matching the given patterns | ||||
-X --exclude PATTERN [+] exclude names matching the given patterns | ||||
-m --message TEXT use text as commit message | ||||
-l --logfile FILE read commit message from file | ||||
-d --date DATE record the specified date as commit date | ||||
-u --user USER record the specified user as committer | ||||
-S --subrepos recurse into subrepositories | ||||
(some details hidden, use --verbose to show complete help) | ||||
$ hg help cleanstatus | ||||
hg cleanstatus [ONLYHELPHERE] | ||||
alias for: hg status -c | ||||
show changed files in the working directory | ||||
Show status of files in the repository. If names are given, only files | ||||
that match are shown. Files that are clean or ignored or the source of a | ||||
copy/move operation, are not listed unless -c/--clean, -i/--ignored, | ||||
-C/--copies or -A/--all are given. Unless options described with "show | ||||
only ..." are given, the options -mardu are used. | ||||
Option -q/--quiet hides untracked (unknown and ignored) files unless | ||||
explicitly requested with -u/--unknown or -i/--ignored. | ||||
Note: | ||||
'hg status' may appear to disagree with diff if permissions have | ||||
changed or a merge has occurred. The standard diff format does not | ||||
report permission changes and diff only reports changes relative to one | ||||
merge parent. | ||||
If one revision is given, it is used as the base revision. If two | ||||
revisions are given, the differences between them are shown. The --change | ||||
option can also be used as a shortcut to list the changed files of a | ||||
revision from its first parent. | ||||
The codes used to show the status of files are: | ||||
M = modified | ||||
A = added | ||||
R = removed | ||||
C = clean | ||||
! = missing (deleted by non-hg command, but still tracked) | ||||
? = not tracked | ||||
I = ignored | ||||
= origin of the previous file (with --copies) | ||||
Returns 0 on success. | ||||
defined by: * (glob) | ||||
*/* (glob) (?) | ||||
*/* (glob) (?) | ||||
*/* (glob) (?) | ||||
options ([+] can be repeated): | ||||
-A --all show status of all files | ||||
-m --modified show only modified files | ||||
-a --added show only added files | ||||
-r --removed show only removed files | ||||
|
r45694 | -d --deleted show only missing files | ||
|
r37152 | -c --clean show only files without changes | ||
-u --unknown show only unknown (not tracked) files | ||||
-i --ignored show only ignored files | ||||
-n --no-status hide status prefix | ||||
-C --copies show source of copied files | ||||
-0 --print0 end filenames with NUL, for use with xargs | ||||
--rev REV [+] show difference from revision | ||||
--change REV list the changed files of a revision | ||||
-I --include PATTERN [+] include names matching the given patterns | ||||
-X --exclude PATTERN [+] exclude names matching the given patterns | ||||
-S --subrepos recurse into subrepositories | ||||
|
r39967 | -T --template TEMPLATE display with template | ||
|
r37152 | |||
(some details hidden, use --verbose to show complete help) | ||||
$ hg help recursivedoc | head -n 5 | ||||
hg recursivedoc foo bar baz | ||||
alias for: hg dln | ||||
Logs the null rev in debug mode | ||||
|
r11814 | |||
unknown | ||||
$ hg unknown | ||||
|
r46524 | config error: alias 'unknown' resolves to unknown command 'bargle' | ||
[30] | ||||
|
r11814 | $ hg help unknown | ||
alias 'unknown' resolves to unknown command 'bargle' | ||||
ambiguous | ||||
$ hg ambiguous | ||||
|
r46524 | config error: alias 'ambiguous' resolves to ambiguous command 's' | ||
[30] | ||||
|
r11814 | $ hg help ambiguous | ||
alias 'ambiguous' resolves to ambiguous command 's' | ||||
recursive | ||||
$ hg recursive | ||||
|
r46524 | config error: alias 'recursive' resolves to unknown command 'recursive' | ||
[30] | ||||
|
r11814 | $ hg help recursive | ||
alias 'recursive' resolves to unknown command 'recursive' | ||||
|
r22159 | disabled | ||
$ hg disabled | ||||
|
r46524 | config error: alias 'disabled' resolves to unknown command 'email' | ||
|
r22164 | ('email' is provided by 'patchbomb' extension) | ||
|
r46524 | [30] | ||
|
r22159 | $ hg help disabled | ||
alias 'disabled' resolves to unknown command 'email' | ||||
|
r22162 | |||
|
r22159 | 'email' is provided by the following extension: | ||
patchbomb command to send changesets as (a series of) patch emails | ||||
|
r29974 | (use 'hg help extensions' for information on enabling extensions) | ||
|
r22159 | |||
|
r11814 | no definition | ||
$ hg nodef | ||||
|
r46524 | config error: no definition for alias 'nodefinition' | ||
[30] | ||||
|
r11814 | $ hg help nodef | ||
no definition for alias 'nodefinition' | ||||
|
r21569 | no closing quotation | ||
$ hg noclosing | ||||
|
r46524 | config error: error in definition for alias 'noclosingquotation': No closing quotation | ||
[30] | ||||
|
r21569 | $ hg help noclosing | ||
error in definition for alias 'noclosingquotation': No closing quotation | ||||
|
r35225 | "--" in alias definition should be preserved | ||
$ hg --config alias.dash='cat --' -R alias dash -r0 | ||||
abort: -r0 not under root '$TESTTMP/alias' | ||||
(consider using '--cwd alias') | ||||
[255] | ||||
|
r21569 | |||
|
r11814 | invalid options | ||
$ hg no--cwd | ||||
|
r46524 | config error: error in definition for alias 'no--cwd': --cwd may only be given on the command line | ||
[30] | ||||
|
r11814 | $ hg help no--cwd | ||
|
r22162 | error in definition for alias 'no--cwd': --cwd may only be given on the | ||
command line | ||||
|
r11814 | $ hg no-R | ||
|
r46524 | config error: error in definition for alias 'no-R': -R may only be given on the command line | ||
[30] | ||||
|
r11814 | $ hg help no-R | ||
error in definition for alias 'no-R': -R may only be given on the command line | ||||
$ hg no--repo | ||||
|
r46524 | config error: error in definition for alias 'no--repo': --repo may only be given on the command line | ||
[30] | ||||
|
r11814 | $ hg help no--repo | ||
|
r22162 | error in definition for alias 'no--repo': --repo may only be given on the | ||
command line | ||||
|
r11814 | $ hg no--repository | ||
|
r46524 | config error: error in definition for alias 'no--repository': --repository may only be given on the command line | ||
[30] | ||||
|
r11814 | $ hg help no--repository | ||
|
r22162 | error in definition for alias 'no--repository': --repository may only be given | ||
on the command line | ||||
|
r18693 | $ hg no--config | ||
|
r46524 | config error: error in definition for alias 'no--config': --config may only be given on the command line | ||
[30] | ||||
|
r35225 | $ hg no --config alias.no='--repo elsewhere --cwd elsewhere status' | ||
|
r46524 | config error: error in definition for alias 'no': --repo/--cwd may only be given on the command line | ||
[30] | ||||
|
r35225 | $ hg no --config alias.no='--repo elsewhere' | ||
|
r46524 | config error: error in definition for alias 'no': --repo may only be given on the command line | ||
[30] | ||||
|
r11814 | |||
|
r16609 | optional repository | ||
|
r17015 | #if no-outer-repo | ||
|
r16609 | $ hg optionalrepo | ||
init | ||||
|
r17015 | #endif | ||
|
r11814 | $ cd alias | ||
|
r16609 | $ cat > .hg/hgrc <<EOF | ||
> [alias] | ||||
> myinit = init -q | ||||
> EOF | ||||
$ hg optionalrepo | ||||
init -q | ||||
|
r11814 | |||
no usage | ||||
$ hg nousage | ||||
no rollback information available | ||||
|
r21556 | [1] | ||
|
r11814 | |||
$ echo foo > foo | ||||
|
r15233 | $ hg commit -Amfoo | ||
|
r11814 | adding foo | ||
|
r27679 | infer repository | ||
$ cd .. | ||||
#if no-outer-repo | ||||
$ hg shortlog alias/foo | ||||
0 e63c23eaa88a | 1970-01-01 00:00 +0000 | ||||
#endif | ||||
$ cd alias | ||||
|
r11814 | |||
with opts | ||||
$ hg cleanst | ||||
C foo | ||||
with opts and whitespace | ||||
$ hg shortlog | ||||
0 e63c23eaa88a | 1970-01-01 00:00 +0000 | ||||
|
r14265 | positional arguments | ||
|
r16294 | $ hg positional | ||
abort: too few arguments for command alias | ||||
[255] | ||||
$ hg positional a | ||||
abort: too few arguments for command alias | ||||
[255] | ||||
|
r14265 | $ hg positional 'node|short' rev | ||
0 e63c23eaa88a | 1970-01-01 00:00 +0000 | ||||
|
r11814 | |||
interaction with defaults | ||||
$ hg mylog | ||||
0:e63c23eaa88a | ||||
$ hg lognull | ||||
-1:000000000000 | ||||
properly recursive | ||||
$ hg dln | ||||
changeset: -1:0000000000000000000000000000000000000000 | ||||
|
r22765 | phase: public | ||
|
r11814 | parent: -1:0000000000000000000000000000000000000000 | ||
parent: -1:0000000000000000000000000000000000000000 | ||||
manifest: -1:0000000000000000000000000000000000000000 | ||||
user: | ||||
date: Thu Jan 01 00:00:00 1970 +0000 | ||||
extra: branch=default | ||||
path expanding | ||||
$ FOO=`pwd` hg put | ||||
$ cat 0.diff | ||||
# HG changeset patch | ||||
# User test | ||||
# Date 0 0 | ||||
|
r18648 | # Thu Jan 01 00:00:00 1970 +0000 | ||
|
r11814 | # Node ID e63c23eaa88ae77967edcf4ea194d31167c478b0 | ||
# Parent 0000000000000000000000000000000000000000 | ||||
foo | ||||
diff -r 000000000000 -r e63c23eaa88a foo | ||||
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 | ||||
+++ b/foo Thu Jan 01 00:00:00 1970 +0000 | ||||
@@ -0,0 +1,1 @@ | ||||
+foo | ||||
|
r11989 | simple shell aliases | ||
|
r11814 | |||
|
r11989 | $ hg blank | ||
$ hg blank foo | ||||
|
r12536 | $ hg self | ||
self | ||||
|
r16965 | $ hg echoall | ||
|
r11989 | |||
|
r16965 | $ hg echoall foo | ||
|
r11814 | foo | ||
|
r16965 | $ hg echoall 'test $2' foo | ||
|
r11989 | test $2 foo | ||
|
r22157 | $ hg echoall 'test $@' foo '$@' | ||
test $@ foo $@ | ||||
$ hg echoall 'test "$@"' foo '"$@"' | ||||
test "$@" foo "$@" | ||||
|
r11989 | $ hg echo1 foo bar baz | ||
foo | ||||
$ hg echo2 foo bar baz | ||||
bar | ||||
$ hg echo13 foo bar baz test | ||||
foo baz | ||||
$ hg echo2 foo | ||||
|
r22158 | $ hg echotokens | ||
$ hg echotokens foo 'bar $1 baz' | ||||
foo | ||||
bar $1 baz | ||||
$ hg echotokens 'test $2' foo | ||||
test $2 | ||||
foo | ||||
$ hg echotokens 'test $@' foo '$@' | ||||
test $@ | ||||
foo | ||||
$@ | ||||
$ hg echotokens 'test "$@"' foo '"$@"' | ||||
test "$@" | ||||
foo | ||||
"$@" | ||||
|
r11989 | $ echo bar > bar | ||
|
r15233 | $ hg commit -qA -m bar | ||
|
r11989 | $ hg count . | ||
1 | ||||
$ hg count 'branch(default)' | ||||
2 | ||||
|
r12536 | $ hg mcount -r '"branch(default)"' | ||
2 | ||||
|
r12656 | $ hg tglog | ||
|
r18648 | @ 1:042423737847: 'bar' | ||
|
r12656 | | | ||
o 0:e63c23eaa88a: 'foo' | ||||
|
r12536 | |||
|
r12932 | |||
shadowing | ||||
$ hg i | ||||
hg: command 'i' is ambiguous: | ||||
idalias idaliaslong idaliasshell identify import incoming init | ||||
[255] | ||||
$ hg id | ||||
|
r18648 | 042423737847 tip | ||
|
r12932 | $ hg ida | ||
hg: command 'ida' is ambiguous: | ||||
idalias idaliaslong idaliasshell | ||||
[255] | ||||
$ hg idalias | ||||
|
r18648 | 042423737847 tip | ||
|
r12932 | $ hg idaliasl | ||
|
r18648 | 042423737847 tip | ||
|
r12932 | $ hg idaliass | ||
test | ||||
$ hg parentsshell | ||||
hg: command 'parentsshell' is ambiguous: | ||||
parentsshell1 parentsshell2 | ||||
[255] | ||||
$ hg parentsshell1 | ||||
one | ||||
$ hg parentsshell2 | ||||
two | ||||
|
r12536 | shell aliases with global options | ||
$ hg init sub | ||||
$ cd sub | ||||
$ hg count 'branch(default)' | ||||
|
r46518 | abort: unknown revision 'default' | ||
|
r12536 | 0 | ||
$ hg -v count 'branch(default)' | ||||
|
r46518 | abort: unknown revision 'default' | ||
|
r12536 | 0 | ||
$ hg -R .. count 'branch(default)' | ||||
|
r46518 | abort: unknown revision 'default' | ||
|
r12536 | 0 | ||
$ hg --cwd .. count 'branch(default)' | ||||
2 | ||||
|
r16965 | $ hg echoall --cwd .. | ||
|
r14886 | |||
|
r12536 | |||
|
r35225 | "--" passed to shell alias should be preserved | ||
$ hg --config alias.printf='!printf "$@"' printf '%s %s %s\n' -- --cwd .. | ||||
-- --cwd .. | ||||
|
r12536 | |||
repo specific shell aliases | ||||
$ cat >> .hg/hgrc <<EOF | ||||
> [alias] | ||||
|
r16965 | > subalias = !echo sub | ||
|
r12536 | > EOF | ||
$ cat >> ../.hg/hgrc <<EOF | ||||
> [alias] | ||||
|
r16965 | > mainalias = !echo main | ||
|
r12536 | > EOF | ||
shell alias defined in current repo | ||||
$ hg subalias | ||||
sub | ||||
$ hg --cwd .. subalias > /dev/null | ||||
hg: unknown command 'subalias' | ||||
|
r27623 | (did you mean idalias?) | ||
|
r12536 | [255] | ||
$ hg -R .. subalias > /dev/null | ||||
|
r14890 | hg: unknown command 'subalias' | ||
|
r27623 | (did you mean idalias?) | ||
|
r14890 | [255] | ||
|
r12536 | |||
shell alias defined in other repo | ||||
$ hg mainalias > /dev/null | ||||
hg: unknown command 'mainalias' | ||||
|
r27623 | (did you mean idalias?) | ||
|
r12536 | [255] | ||
$ hg -R .. mainalias | ||||
main | ||||
$ hg --cwd .. mainalias | ||||
main | ||||
|
r11989 | |||
|
r24222 | typos get useful suggestions | ||
$ hg --cwd .. manalias | ||||
hg: unknown command 'manalias' | ||||
(did you mean one of idalias, mainalias, manifest?) | ||||
[255] | ||||
|
r11814 | |||
|
r13434 | shell aliases with escaped $ chars | ||
$ hg escaped1 | ||||
test$test | ||||
$ hg escaped2 | ||||
HGFOO is BAR | ||||
$ hg escaped3 HGFOO | ||||
HGFOO is BAR | ||||
$ hg escaped4 test | ||||
$0 $@ | ||||
|
r20328 | abbreviated name, which matches against both shell alias and the | ||
command provided extension, should be aborted. | ||||
$ cat >> .hg/hgrc <<EOF | ||||
> [extensions] | ||||
> hgext.rebase = | ||||
|
r23093 | > EOF | ||
#if windows | ||||
$ cat >> .hg/hgrc <<EOF | ||||
> [alias] | ||||
> rebate = !echo this is %HG_ARGS% | ||||
> EOF | ||||
#else | ||||
$ cat >> .hg/hgrc <<EOF | ||||
|
r20328 | > [alias] | ||
|
r22377 | > rebate = !echo this is \$HG_ARGS | ||
|
r20328 | > EOF | ||
|
r23093 | #endif | ||
|
r37152 | $ cat >> .hg/hgrc <<EOF | ||
> rebate:doc = This is my alias which just prints something. | ||||
> rebate:help = [MYARGS] | ||||
> EOF | ||||
|
r20328 | $ hg reba | ||
hg: command 'reba' is ambiguous: | ||||
rebase rebate | ||||
[255] | ||||
$ hg rebat | ||||
this is rebate | ||||
|
r22377 | $ hg rebat --foo-bar | ||
this is rebate --foo-bar | ||||
|
r13434 | |||
|
r37152 | help for a shell alias | ||
$ hg help -c | grep rebate | ||||
|
r40450 | rebate This is my alias which just prints something. | ||
|
r37152 | $ hg help rebate | ||
hg rebate [MYARGS] | ||||
|
r37162 | shell alias for: echo this is %HG_ARGS% (windows !) | ||
shell alias for: echo this is $HG_ARGS (no-windows !) | ||||
|
r37152 | |||
This is my alias which just prints something. | ||||
defined by:* (glob) | ||||
*/* (glob) (?) | ||||
*/* (glob) (?) | ||||
*/* (glob) (?) | ||||
(some details hidden, use --verbose to show complete help) | ||||
|
r37157 | invalid character in user-specified help | ||
>>> with open('.hg/hgrc', 'ab') as f: | ||||
... f.write(b'[alias]\n' | ||||
... b'invaliddoc = log\n' | ||||
|
r40708 | ... b'invaliddoc:doc = \xc3\xa9\n' | ||
|
r37157 | ... b'invalidhelp = log\n' | ||
|
r40708 | ... b'invalidhelp:help = \xc3\xa9\n') and None | ||
|
r37157 | $ hg help invaliddoc | ||
non-ASCII character in alias definition 'invaliddoc:doc' | ||||
$ hg help invalidhelp | ||||
non-ASCII character in alias definition 'invalidhelp:help' | ||||
$ hg invaliddoc | ||||
|
r46524 | config error: non-ASCII character in alias definition 'invaliddoc:doc' | ||
[30] | ||||
|
r37157 | $ hg invalidhelp | ||
|
r46524 | config error: non-ASCII character in alias definition 'invalidhelp:help' | ||
[30] | ||||
|
r37157 | |||
|
r11814 | invalid arguments | ||
$ hg rt foo | ||||
hg rt: invalid arguments | ||||
|
r15203 | hg rt | ||
|
r11814 | |||
alias for: hg root | ||||
|
r42610 | options: | ||
-T --template TEMPLATE display with template | ||||
|
r29974 | (use 'hg rt -h' to show more help) | ||
|
r12316 | [255] | ||
|
r12748 | |||
invalid global arguments for normal commands, aliases, and shell aliases | ||||
$ hg --invalid root | ||||
hg: option --invalid not recognized | ||||
|
r38824 | (use 'hg help -v' for a list of global options) | ||
|
r12748 | [255] | ||
$ hg --invalid mylog | ||||
hg: option --invalid not recognized | ||||
|
r38824 | (use 'hg help -v' for a list of global options) | ||
|
r12748 | [255] | ||
$ hg --invalid blank | ||||
hg: option --invalid not recognized | ||||
|
r38824 | (use 'hg help -v' for a list of global options) | ||
|
r12748 | [255] | ||
|
r29087 | environment variable changes in alias commands | ||
|
r34485 | $ cat > $TESTTMP/expandalias.py <<EOF | ||
|
r29087 | > import os | ||
|
r34485 | > from mercurial import cmdutil, commands, registrar | ||
> cmdtable = {} | ||||
> command = registrar.command(cmdtable) | ||||
|
r36398 | > @command(b'expandalias') | ||
|
r34485 | > def expandalias(ui, repo, name): | ||
> alias = cmdutil.findcmd(name, commands.table)[1][0] | ||||
|
r36398 | > ui.write(b'%s args: %s\n' % (name, b' '.join(alias.args))) | ||
|
r29087 | > os.environ['COUNT'] = '2' | ||
|
r36398 | > ui.write(b'%s args: %s (with COUNT=2)\n' % (name, b' '.join(alias.args))) | ||
|
r29087 | > EOF | ||
$ cat >> $HGRCPATH <<'EOF' | ||||
> [extensions] | ||||
|
r34485 | > expandalias = $TESTTMP/expandalias.py | ||
|
r29087 | > [alias] | ||
|
r34485 | > showcount = log -T "$COUNT" -r . | ||
|
r29087 | > EOF | ||
|
r34485 | $ COUNT=1 hg expandalias showcount | ||
showcount args: -T 1 -r . | ||||
showcount args: -T 2 -r . (with COUNT=2) | ||||
|
r29087 | |||
|
r15600 | This should show id: | ||
$ hg --config alias.log='id' log | ||||
000000000000 tip | ||||
This shouldn't: | ||||
$ hg --config alias.log='id' history | ||||
|
r16912 | |||
$ cd ../.. | ||||
|
r21556 | |||
return code of command and shell aliases: | ||||
$ hg mycommit -R alias | ||||
nothing changed | ||||
[1] | ||||
$ hg exit1 | ||||
[1] | ||||
|
r23934 | |||
#if no-outer-repo | ||||
$ hg root | ||||
|
r46518 | abort: no repository found in '$TESTTMP' (.hg not found) | ||
|
r46523 | [10] | ||
|
r23934 | $ hg --config alias.hgroot='!hg root' hgroot | ||
|
r46518 | abort: no repository found in '$TESTTMP' (.hg not found) | ||
|
r46523 | [10] | ||
|
r23934 | #endif | ||