view tests/test-hgignore @ 2474:1e32e2fe8a67

Fix cold cache diff performance cold cache diff performance has regressed in two ways. localrepo.changes has optimizations for diffing against the working dir parent that expect node1 to be None. commands.revpair() usage means that commands.dodiff() never sends node1 == None. This is fixed in localrepo.changes by checking against the dirstate parents. In the non-dirstate parents case, localrepo.changes does a loop comparing files without first sorting the file names, leading to random access across the disk.
author Chris Mason <mason@suse.com>
date Wed, 21 Jun 2006 09:28:48 -0700
parents 182f500805db
children 4e521a3ee5eb
line wrap: on
line source

#!/bin/sh

hg init
touch a.o
touch a.c
touch syntax
mkdir dir
touch dir/a.o
touch dir/b.o
touch dir/c.o

hg add dir/a.o
hg commit -m 0
hg add dir/b.o

echo "--" ; hg status

echo "*.o" > .hgignore
echo "--" ; hg status 2>&1 | sed -e 's/abort: .*\.hgignore:/abort: .hgignore:/'

echo ".*\.o" > .hgignore
echo "--" ; hg status

# XXX: broken
#echo "glob:**.o" > .hgignore
#echo "--" ; hg status
#
#echo "glob:*.o" > .hgignore
#echo "--" ; hg status

echo "syntax: invalid" > .hgignore
echo "--" ; hg status 2>&1 | sed -e 's/.*\.hgignore:/.hgignore:/'

echo "syntax: glob" > .hgignore
echo "*.o" >> .hgignore
echo "--" ; hg status

echo "relglob:syntax*" > .hgignore
echo "--" ; hg status

echo "relglob:*" > .hgignore
echo "--" ; hg status

cd dir
echo "--" ; hg status .