Mercurial > hg
changeset 12932:ab93029ab622 stable
alias: fall back to normal error handling for ambigious commands (fixes issue2475)
author | Steve Losh <steve@stevelosh.com> |
---|---|
date | Fri, 05 Nov 2010 15:54:32 -0400 |
parents | 9bb180abc4d0 |
children | 7a2bca0b1e70 ea7ad8c3988a 6ff784de7c3a |
files | mercurial/dispatch.py tests/test-alias.t |
diffstat | 2 files changed, 35 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/mercurial/dispatch.py Fri Nov 05 15:13:22 2010 +0100 +++ b/mercurial/dispatch.py Fri Nov 05 15:54:32 2010 -0400 @@ -453,7 +453,7 @@ cmd = args[0] try: aliases, entry = cmdutil.findcmd(cmd, cmdtable, lui.config("ui", "strict")) - except error.UnknownCommand: + except (error.AmbiguousCommand, error.UnknownCommand): commands.norepo = norepo os.chdir(cwd) return
--- a/tests/test-alias.t Fri Nov 05 15:13:22 2010 +0100 +++ b/tests/test-alias.t Fri Nov 05 15:54:32 2010 -0400 @@ -29,6 +29,11 @@ > mcount = !hg log \$@ --template='.' | wc -c | sed -e 's/ //g' > rt = root > tglog = glog --template "{rev}:{node|short}: '{desc}' {branches}\n" + > idalias = id + > idaliaslong = id + > idaliasshell = !echo test + > parentsshell1 = !echo one + > parentsshell2 = !echo two > > [defaults] > mylog = -q @@ -194,6 +199,35 @@ o 0:e63c23eaa88a: 'foo' + +shadowing + + $ hg i + hg: command 'i' is ambiguous: + idalias idaliaslong idaliasshell identify import incoming init + [255] + $ hg id + 7e7f92de180e tip + $ hg ida + hg: command 'ida' is ambiguous: + idalias idaliaslong idaliasshell + [255] + $ hg idalias + 7e7f92de180e tip + $ hg idaliasl + 7e7f92de180e tip + $ hg idaliass + test + $ hg parentsshell + hg: command 'parentsshell' is ambiguous: + parentsshell1 parentsshell2 + [255] + $ hg parentsshell1 + one + $ hg parentsshell2 + two + + shell aliases with global options $ hg init sub