##// END OF EJS Templates
addremove: correctly handle intermediate symlinks...
addremove: correctly handle intermediate symlinks This fixes problems mentioned in issue660 comments (unrelated to original issue) where directory was renamed, and symlink was added instead. In such situation addremove wasn't able to correctly detect that old files no longer here, but tried to add symlink (and failed due collision with old files).

File last commit:

r6048:cfb4a51d merge default
r6651:7f0dd352 default
Show More
test-walk
108 lines | 2.0 KiB | text/plain | TextLexer
#!/bin/sh
debugwalk()
{
echo "hg debugwalk $@"
hg debugwalk "$@"
echo
}
chdir()
{
echo "cd $@"
cd "$@"
echo
}
mkdir t
cd t
hg init
mkdir -p beans
for b in kidney navy turtle borlotti black pinto; do
echo $b > beans/$b
done
mkdir -p mammals/Procyonidae
for m in cacomistle coatimundi raccoon; do
echo $m > mammals/Procyonidae/$m
done
echo skunk > mammals/skunk
echo fennel > fennel
echo fenugreek > fenugreek
echo fiddlehead > fiddlehead
echo glob:glob > glob:glob
hg addremove
hg commit -m "commit #0" -d "1000000 0"
debugwalk
debugwalk -I.
chdir mammals
debugwalk
debugwalk -X ../beans
debugwalk -I '*k'
debugwalk -I 'glob:*k'
debugwalk -I 'relglob:*k'
debugwalk -I 'relglob:*k' .
debugwalk -I 're:.*k$'
debugwalk -I 'relre:.*k$'
debugwalk -I 'path:beans'
debugwalk -I 'relpath:../beans'
debugwalk .
debugwalk -I.
debugwalk Procyonidae
chdir Procyonidae
debugwalk .
debugwalk ..
chdir ..
debugwalk ../beans
debugwalk .
debugwalk .hg
debugwalk ../.hg
chdir ..
debugwalk -Ibeans
debugwalk -I '{*,{b,m}*/*}k'
debugwalk 'glob:mammals/../beans/b*'
debugwalk '-X*/Procyonidae' mammals
debugwalk path:mammals
debugwalk ..
debugwalk beans/../..
debugwalk .hg
debugwalk beans/../.hg
debugwalk beans/../.hg/data
debugwalk beans/.hg
# Don't know how to test absolute paths without always getting a false
# error.
#debugwalk `pwd`/beans
#debugwalk `pwd`/..
debugwalk glob:\*
debugwalk 'glob:**e'
debugwalk 're:.*[kb]$'
debugwalk path:beans/black
debugwalk path:beans//black
debugwalk relglob:Procyonidae
debugwalk 'relglob:Procyonidae/**'
debugwalk 'relglob:Procyonidae/**' fennel
debugwalk beans 'glob:beans/*'
debugwalk 'glob:mamm**'
debugwalk 'glob:mamm**' fennel
debugwalk 'glob:j*'
debugwalk NOEXIST
mkfifo fifo
debugwalk fifo
rm fenugreek
debugwalk fenugreek
hg rm fenugreek
debugwalk fenugreek
touch new
debugwalk new
mkdir ignored
touch ignored/file
echo '^ignored$' > .hgignore
debugwalk ignored
debugwalk ignored/file
chdir ..
debugwalk -R t t/mammals/skunk
mkdir t2
chdir t2
debugwalk -R ../t ../t/mammals/skunk
debugwalk --cwd ../t mammals/skunk