Mercurial > hg
annotate mercurial/help/filesets.txt @ 31650:23391acfc421
py3: fix manifestdict.fastdelta() to be compatible with memoryview
This doesn't look nice, but a straightforward way to support Python 3.
bytes(m[start:end]) is needed because a memoryview doesn't support ordering
operations. On Python 2, m[start:end] returns a bytes object even if m is
a buffer, so calling bytes() should involve no additional copy.
I'm tired of trying cleaner alternatives, including:
a. extend memoryview to be compatible with buffer type
=> memoryview is not an acceptable base type
b. wrap memoryview by buffer-like class
=> zlib complains it isn't bytes-like
author | Yuya Nishihara <yuya@tcha.org> |
---|---|
date | Sun, 26 Mar 2017 19:06:48 +0900 |
parents | f8df87018ae9 |
children | 73432eee0ac4 |
rev | line source |
---|---|
14686 | 1 Mercurial supports a functional language for selecting a set of |
18960
170fc0949fb6
check-code: check txt files for trailing whitespace
Mads Kiilerich <madski@unity3d.com>
parents:
15825
diff
changeset
|
2 files. |
14686 | 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 | |
30729
a4bc8fff67fc
help: apply the section headings from revsets to filesets
Matt Harbison <matt_harbison@yahoo.com>
parents:
23109
diff
changeset
|
18 See also :hg:`help patterns`. |
a4bc8fff67fc
help: apply the section headings from revsets to filesets
Matt Harbison <matt_harbison@yahoo.com>
parents:
23109
diff
changeset
|
19 |
30731
b8a188a6f191
help: merge the various operator sections of revsets, filesets and templates
Matt Harbison <matt_harbison@yahoo.com>
parents:
30729
diff
changeset
|
20 Operators |
b8a188a6f191
help: merge the various operator sections of revsets, filesets and templates
Matt Harbison <matt_harbison@yahoo.com>
parents:
30729
diff
changeset
|
21 ========= |
30729
a4bc8fff67fc
help: apply the section headings from revsets to filesets
Matt Harbison <matt_harbison@yahoo.com>
parents:
23109
diff
changeset
|
22 |
14686 | 23 There is a single prefix operator: |
24 | |
25 ``not x`` | |
26 Files not in x. Short form is ``! x``. | |
27 | |
28 These are the supported infix operators: | |
29 | |
30 ``x and y`` | |
31 The intersection of files in x and y. Short form is ``x & y``. | |
32 | |
33 ``x or y`` | |
34 The union of files in x and y. There are two alternative short | |
35 forms: ``x | y`` and ``x + y``. | |
36 | |
37 ``x - y`` | |
38 Files in x but not in y. | |
39 | |
30729
a4bc8fff67fc
help: apply the section headings from revsets to filesets
Matt Harbison <matt_harbison@yahoo.com>
parents:
23109
diff
changeset
|
40 Predicates |
a4bc8fff67fc
help: apply the section headings from revsets to filesets
Matt Harbison <matt_harbison@yahoo.com>
parents:
23109
diff
changeset
|
41 ========== |
a4bc8fff67fc
help: apply the section headings from revsets to filesets
Matt Harbison <matt_harbison@yahoo.com>
parents:
23109
diff
changeset
|
42 |
14686 | 43 The following predicates are supported: |
44 | |
45 .. predicatesmarker | |
46 | |
30729
a4bc8fff67fc
help: apply the section headings from revsets to filesets
Matt Harbison <matt_harbison@yahoo.com>
parents:
23109
diff
changeset
|
47 Examples |
a4bc8fff67fc
help: apply the section headings from revsets to filesets
Matt Harbison <matt_harbison@yahoo.com>
parents:
23109
diff
changeset
|
48 ======== |
a4bc8fff67fc
help: apply the section headings from revsets to filesets
Matt Harbison <matt_harbison@yahoo.com>
parents:
23109
diff
changeset
|
49 |
14686 | 50 Some sample queries: |
51 | |
52 - Show status of files that appear to be binary in the working directory:: | |
53 | |
54 hg status -A "set:binary()" | |
55 | |
56 - Forget files that are in .hgignore but are already tracked:: | |
57 | |
58 hg forget "set:hgignore() and not ignored()" | |
59 | |
60 - Find text files that contain a string:: | |
61 | |
23109
cf56f7a60b45
help: use "hg files" instead of "hg locate" in "hg help filesets"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
18960
diff
changeset
|
62 hg files "set:grep(magic) and not binary()" |
14686 | 63 |
64 - Find C files in a non-standard encoding:: | |
65 | |
23109
cf56f7a60b45
help: use "hg files" instead of "hg locate" in "hg help filesets"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
18960
diff
changeset
|
66 hg files "set:**.c and not encoding('UTF-8')" |
14686 | 67 |
68 - Revert copies of large binary files:: | |
69 | |
70 hg revert "set:copied() and binary() and size('>1M')" | |
71 | |
31193
4140d49d2efb
fileset: add revs(revs, fileset) to evaluate set in working directory
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
30731
diff
changeset
|
72 - Revert files that were added to the working directory:: |
4140d49d2efb
fileset: add revs(revs, fileset) to evaluate set in working directory
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
30731
diff
changeset
|
73 |
31286
f8df87018ae9
help: fix example of revs() fileset
Yuya Nishihara <yuya@tcha.org>
parents:
31193
diff
changeset
|
74 hg revert "set:revs('wdir()', added())" |
31193
4140d49d2efb
fileset: add revs(revs, fileset) to evaluate set in working directory
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
30731
diff
changeset
|
75 |
14829
968c301a1005
help: fileset foo.lst was named files.lst
Arne Babenhauserheide <bab@draketo.de>
parents:
14686
diff
changeset
|
76 - Remove files listed in foo.lst that contain the letter a or b:: |
14686 | 77 |
78 hg remove "set: 'listfile:foo.lst' and (**a* or **b*)" |