change locate to use relglobs by default
This makes its default behaviour useful again (issue108), and
changes it search the entire repository by default (instead
of just the cwd), just like all other commands.
It also hides issue204 by default, but you'll still see the
same behaviour if you give it a relpath: pattern.
#!/bin/sh
hg init t
cd t
hg branches
echo foo > a
hg add a
hg ci -m "initial" -d "1000000 0"
hg branch foo
hg branch
hg ci -m "add branch name" -d "1000000 0"
hg branch bar
hg ci -m "change branch name" -d "1000000 0"
hg branch ""
hg ci -m "clear branch name" -d "1000000 0"
hg co foo
hg branch
echo bleah > a
hg ci -m "modify a branch" -d "1000000 0"
hg merge
hg branch
hg ci -m "merge" -d "1000000 0"
hg log
hg branches
hg branches -q
echo % test for invalid branch cache
hg rollback
cp .hg/branches.cache .hg/bc-invalid
hg log -r foo
cp .hg/bc-invalid .hg/branches.cache
hg --debug log -r foo
rm .hg/branches.cache
echo corrupted > .hg/branches.cache
hg log -qr foo
cat .hg/branches.cache
echo % test for different branch cache features
echo '4909a3732169c0c20011c4f4b8fdff4e3d89b23f 4' > .hg/branches.cache
hg branches --debug
echo ' features: unnamed dummy foo bar' > .hg/branches.cache
hg branches --debug
echo ' features: dummy' > .hg/branches.cache
hg branches --debug
echo % test old hg reading branch cache with feature list
python << EOF
import binascii
f = file('.hg/branches.cache')
lines = f.read().split('\n')
f.close()
firstline = lines[0]
last, lrev = lines.pop(0).rstrip().split(" ", 1)
try:
last, lrev = binascii.unhexlify(last), int(lrev)
except ValueError, inst:
if str(inst) == "invalid literal for int():%s" % firstline:
print "ValueError raised correctly, good."
else:
print "ValueError: %s" % inst
EOF
echo % update with no arguments: tipmost revision of the current branch
hg up -q -C 0
hg up -q
hg id
hg up -q 1
hg up -q
hg id