Mercurial > hg
annotate mercurial/help/filesets.txt @ 15825:8b611944eb84 stable
filesets: use example with quotes for encoding predicate
A user on IRC was confused that "encoding(ASCII)" works and
"encoding(UTF-8)" fails with "parse error: encoding requires an
encoding name".
author | Martin Geisler <mg@aragost.com> |
---|---|
date | Tue, 10 Jan 2012 15:20:16 +0100 |
parents | 968c301a1005 |
children | 170fc0949fb6 |
rev | line source |
---|---|
14686 | 1 Mercurial supports a functional language for selecting a set of |
2 files. | |
3 | |
4 Like other file patterns, this pattern type is indicated by a prefix, | |
5 'set:'. The language supports a number of predicates which are joined | |
6 by infix operators. Parenthesis can be used for grouping. | |
7 | |
8 Identifiers such as filenames or patterns must be quoted with single | |
9 or double quotes if they contain characters outside of | |
10 ``[.*{}[]?/\_a-zA-Z0-9\x80-\xff]`` or if they match one of the | |
11 predefined predicates. This generally applies to file patterns other | |
12 than globs and arguments for predicates. | |
13 | |
14 Special characters can be used in quoted identifiers by escaping them, | |
15 e.g., ``\n`` is interpreted as a newline. To prevent them from being | |
16 interpreted, strings can be prefixed with ``r``, e.g. ``r'...'``. | |
17 | |
18 There is a single prefix operator: | |
19 | |
20 ``not x`` | |
21 Files not in x. Short form is ``! x``. | |
22 | |
23 These are the supported infix operators: | |
24 | |
25 ``x and y`` | |
26 The intersection of files in x and y. Short form is ``x & y``. | |
27 | |
28 ``x or y`` | |
29 The union of files in x and y. There are two alternative short | |
30 forms: ``x | y`` and ``x + y``. | |
31 | |
32 ``x - y`` | |
33 Files in x but not in y. | |
34 | |
35 The following predicates are supported: | |
36 | |
37 .. predicatesmarker | |
38 | |
39 Some sample queries: | |
40 | |
41 - Show status of files that appear to be binary in the working directory:: | |
42 | |
43 hg status -A "set:binary()" | |
44 | |
45 - Forget files that are in .hgignore but are already tracked:: | |
46 | |
47 hg forget "set:hgignore() and not ignored()" | |
48 | |
49 - Find text files that contain a string:: | |
50 | |
51 hg locate "set:grep(magic) and not binary()" | |
52 | |
53 - Find C files in a non-standard encoding:: | |
54 | |
15825
8b611944eb84
filesets: use example with quotes for encoding predicate
Martin Geisler <mg@aragost.com>
parents:
14829
diff
changeset
|
55 hg locate "set:**.c and not encoding('UTF-8')" |
14686 | 56 |
57 - Revert copies of large binary files:: | |
58 | |
59 hg revert "set:copied() and binary() and size('>1M')" | |
60 | |
14829
968c301a1005
help: fileset foo.lst was named files.lst
Arne Babenhauserheide <bab@draketo.de>
parents:
14686
diff
changeset
|
61 - Remove files listed in foo.lst that contain the letter a or b:: |
14686 | 62 |
63 hg remove "set: 'listfile:foo.lst' and (**a* or **b*)" | |
64 | |
65 See also :hg:`help patterns`. |