view tests/test-586 @ 12039:18e1e7520b67 stable

alias: make shadowing behavior more consistent (issue2054) Currently, given an alias like the following: [alias] summary = summary --remote The alias might be executed - or it might not - depending on the order of the cmdtable dict. This happens because cmdalias gets assigned back to the cmdtable like so: cmdtable['summary'] = ... Yet '^summary|sum' is still in the table, so which one cmdutil.findcmd() chooses isn't deterministic. This patch makes cmdalias assign back to '^summary|sum'. It uses the same cmdtable key lookup that extensions.wrapcommand() does.
author Brodie Rao <brodie@bitheap.org>
date Sat, 21 Aug 2010 22:48:14 -0400
parents f1af59451c0c
children
line wrap: on
line source

#!/bin/sh
# a test for issue586

hg init a
cd a
echo a > a
hg ci -Ama

hg init ../b
cd ../b
echo b > b
hg ci -Amb

hg pull -f ../a
hg merge
hg rm -f a
hg ci -Amc

hg st -A
cd ..

# a test for issue 1433, related to issue586
echo % create test repos
hg init repoa
touch repoa/a
hg -R repoa ci -Am adda

hg init repob
touch repob/b
hg -R repob ci -Am addb

hg init repoc
cd repoc
hg pull ../repoa
hg update
mkdir tst
hg mv * tst
hg ci -m "import a in tst"
hg pull -f ../repob
echo % merge both repos
hg merge
mkdir src
echo % move b content
hg mv b src
hg ci -m "import b in src"
hg manifest