hg locate aborts with 00changelog.i: no node 283f3a2e2a2f7c29

Christian Ebert blacktrash at gmx.net
Wed Jan 18 15:43:25 UTC 2006


* Johannes Stezenbach on Wednesday, January 18, 2006 at 13:42:30 +0100:
> On Wed, Jan 18, 2006 at 09:14:07AM +0100, Christian Ebert wrote:
>> * Johannes Stezenbach on Wednesday, January 18, 2006 at 03:19:24 +0100:
>>> Is documented to work that way, see "FILE NAME PATTERNS" in
>>> the man page.
>>> 
>>> $ hg locate "**/drag/"
>>> 
>>> or even 
>>> 
>>> $ hg locate "glob:**/drag/"
>>> 
>>> should work.
>> 
>> But when I have
>> 
>> drag/test
>> 
>> $ hg locate **test
>> 
>> doesn't work, only
>> 
>> $ hg locate **/test
>> 
>> Whereas when in hgrc I have e.g
>> 
>> [decode]
>> **test = filter.sh
>> 
>> filter.sh is applied to `test'.
> 
> It is pretty essential taht you quote the pattern,

Ah.

> else the shell will expand it and "hg locate" will never see it.

Sounds logic. But here it does not depend on quotes but on
explicit pattern declaration:

$ hg locate
Draft/test
$ hg locate "**test"
**test: No such file or directory
$ hg locate '**test'
**test: No such file or directory
$ hg locate glob:**test
Draft/test

A bit, hm, let's call it counterintuitive.

Also, the manual says:

|By default, Mercurial treats filenames as shell-style extended
|glob patterns.

So I'd expect the default to work without explicit declaration.

c
-- 
_B A U S T E L L E N_ lesen!  --->> <http://www.blacktrash.org/baustellen.html>



More information about the Mercurial mailing list