annotate mercurial/help/revsets.txt @ 13155:f02d7a562a21

subrepo: avoids empty commit when .hgsubstate is dirty (issue2403) This patch avoids empty commit when .hgsubstate is dirty. Empty commit was caused by .hgsubstate being updated back to the state of the working copy parent when committing, if a user had changed it manually and not made any changes in subrepositories. The subrepository state from the working copies parent is compared with the state calculated as a result of trying to commit the subrepositories. If the two states are the same, then return None otherwise the commit is just done. The line: "committing subrepository x" will be written if there is nothing committed, but .hgsubstate is dirty for x subrepository.
author Erik Zielke <ez@aragost.com>
date Mon, 29 Nov 2010 09:37:23 +0100
parents 165079e564f0
children 5f126c01ebfa
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
11382
2f09b13e914d help: new revsets topic
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
1 Mercurial supports a functional language for selecting a set of
2f09b13e914d help: new revsets topic
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
2 revisions.
2f09b13e914d help: new revsets topic
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
3
2f09b13e914d help: new revsets topic
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
4 The language supports a number of predicates which are joined by infix
2f09b13e914d help: new revsets topic
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
5 operators. Parenthesis can be used for grouping.
2f09b13e914d help: new revsets topic
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
6
2f09b13e914d help: new revsets topic
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
7 Identifiers such as branch names must be quoted with single or double
11420
a99ef3711890 revset: improve help on strings
Matt Mackall <mpm@selenic.com>
parents: 11382
diff changeset
8 quotes if they contain characters outside of
a99ef3711890 revset: improve help on strings
Matt Mackall <mpm@selenic.com>
parents: 11382
diff changeset
9 ``[._a-zA-Z0-9\x80-\xff]`` or if they match one of the predefined
12408
78a97859b90d revset: support raw string literals
Brodie Rao <brodie@bitheap.org>
parents: 11944
diff changeset
10 predicates.
78a97859b90d revset: support raw string literals
Brodie Rao <brodie@bitheap.org>
parents: 11944
diff changeset
11
78a97859b90d revset: support raw string literals
Brodie Rao <brodie@bitheap.org>
parents: 11944
diff changeset
12 Special characters can be used in quoted identifiers by escaping them,
78a97859b90d revset: support raw string literals
Brodie Rao <brodie@bitheap.org>
parents: 11944
diff changeset
13 e.g., ``\n`` is interpreted as a newline. To prevent them from being
78a97859b90d revset: support raw string literals
Brodie Rao <brodie@bitheap.org>
parents: 11944
diff changeset
14 interpreted, strings can be prefixed with ``r``, e.g. ``r'...'``.
11382
2f09b13e914d help: new revsets topic
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
15
2f09b13e914d help: new revsets topic
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
16 There is a single prefix operator:
2f09b13e914d help: new revsets topic
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
17
2f09b13e914d help: new revsets topic
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
18 ``not x``
2f09b13e914d help: new revsets topic
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
19 Changesets not in x. Short form is ``! x``.
2f09b13e914d help: new revsets topic
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
20
2f09b13e914d help: new revsets topic
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
21 These are the supported infix operators:
2f09b13e914d help: new revsets topic
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
22
2f09b13e914d help: new revsets topic
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
23 ``x::y``
2f09b13e914d help: new revsets topic
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
24 A DAG range, meaning all changesets that are descendants of x and
2f09b13e914d help: new revsets topic
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
25 ancestors of y, including x and y themselves. If the first endpoint
2f09b13e914d help: new revsets topic
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
26 is left out, this is equivalent to ``ancestors(y)``, if the second
11450
6bca9801c92a revset: fix spelling typo
Julian Cowley <julian@lava.net>
parents: 11420
diff changeset
27 is left out it is equivalent to ``descendants(x)``.
11382
2f09b13e914d help: new revsets topic
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
28
2f09b13e914d help: new revsets topic
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
29 An alternative syntax is ``x..y``.
2f09b13e914d help: new revsets topic
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
30
2f09b13e914d help: new revsets topic
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
31 ``x:y``
2f09b13e914d help: new revsets topic
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
32 All changesets with revision numbers between x and y, both
2f09b13e914d help: new revsets topic
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
33 inclusive. Either endpoint can be left out, they default to 0 and
2f09b13e914d help: new revsets topic
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
34 tip.
2f09b13e914d help: new revsets topic
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
35
2f09b13e914d help: new revsets topic
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
36 ``x and y``
2f09b13e914d help: new revsets topic
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
37 The intersection of changesets in x and y. Short form is ``x & y``.
2f09b13e914d help: new revsets topic
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
38
2f09b13e914d help: new revsets topic
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
39 ``x or y``
2f09b13e914d help: new revsets topic
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
40 The union of changesets in x and y. There are two alternative short
2f09b13e914d help: new revsets topic
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
41 forms: ``x | y`` and ``x + y``.
2f09b13e914d help: new revsets topic
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
42
2f09b13e914d help: new revsets topic
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
43 ``x - y``
2f09b13e914d help: new revsets topic
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
44 Changesets in x but not in y.
2f09b13e914d help: new revsets topic
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
45
2f09b13e914d help: new revsets topic
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
46 The following predicates are supported:
2f09b13e914d help: new revsets topic
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
47
12821
165079e564f0 revsets: generate predicate help dynamically
Patrick Mezard <pmezard@gmail.com>
parents: 12808
diff changeset
48 .. predicatesmarker
11382
2f09b13e914d help: new revsets topic
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
49
2f09b13e914d help: new revsets topic
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
50 Command line equivalents for :hg:`log`::
2f09b13e914d help: new revsets topic
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
51
2f09b13e914d help: new revsets topic
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
52 -f -> ::.
2f09b13e914d help: new revsets topic
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
53 -d x -> date(x)
2f09b13e914d help: new revsets topic
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
54 -k x -> keyword(x)
2f09b13e914d help: new revsets topic
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
55 -m -> merge()
2f09b13e914d help: new revsets topic
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
56 -u x -> user(x)
2f09b13e914d help: new revsets topic
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
57 -b x -> branch(x)
2f09b13e914d help: new revsets topic
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
58 -P x -> !::x
2f09b13e914d help: new revsets topic
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
59 -l x -> limit(expr, x)
2f09b13e914d help: new revsets topic
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
60
12659
5aa5cbaf6efc revsets: add descriptions for sample queries in the help
Brodie Rao <brodie@bitheap.org>
parents: 12657
diff changeset
61 Some sample queries:
5aa5cbaf6efc revsets: add descriptions for sample queries in the help
Brodie Rao <brodie@bitheap.org>
parents: 12657
diff changeset
62
5aa5cbaf6efc revsets: add descriptions for sample queries in the help
Brodie Rao <brodie@bitheap.org>
parents: 12657
diff changeset
63 - Changesets on the default branch::
5aa5cbaf6efc revsets: add descriptions for sample queries in the help
Brodie Rao <brodie@bitheap.org>
parents: 12657
diff changeset
64
12808
74f6531581e8 help: use Windows cmd compatible quoting in revset help
Mads Kiilerich <mads@kiilerich.com>
parents: 12716
diff changeset
65 hg log -r "branch(default)"
12659
5aa5cbaf6efc revsets: add descriptions for sample queries in the help
Brodie Rao <brodie@bitheap.org>
parents: 12657
diff changeset
66
5aa5cbaf6efc revsets: add descriptions for sample queries in the help
Brodie Rao <brodie@bitheap.org>
parents: 12657
diff changeset
67 - Changesets on the default branch since tag 1.5 (excluding merges)::
5aa5cbaf6efc revsets: add descriptions for sample queries in the help
Brodie Rao <brodie@bitheap.org>
parents: 12657
diff changeset
68
12808
74f6531581e8 help: use Windows cmd compatible quoting in revset help
Mads Kiilerich <mads@kiilerich.com>
parents: 12716
diff changeset
69 hg log -r "branch(default) and 1.5:: and not merge()"
11382
2f09b13e914d help: new revsets topic
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
70
12660
6ed5ae6264c2 revsets: add a sample query to the help for getting active branches
Brodie Rao <brodie@bitheap.org>
parents: 12659
diff changeset
71 - Open branch heads::
6ed5ae6264c2 revsets: add a sample query to the help for getting active branches
Brodie Rao <brodie@bitheap.org>
parents: 12659
diff changeset
72
12808
74f6531581e8 help: use Windows cmd compatible quoting in revset help
Mads Kiilerich <mads@kiilerich.com>
parents: 12716
diff changeset
73 hg log -r "head() and not closed()"
12660
6ed5ae6264c2 revsets: add a sample query to the help for getting active branches
Brodie Rao <brodie@bitheap.org>
parents: 12659
diff changeset
74
12659
5aa5cbaf6efc revsets: add descriptions for sample queries in the help
Brodie Rao <brodie@bitheap.org>
parents: 12657
diff changeset
75 - Changesets between tags 1.3 and 1.5 mentioning "bug" that affect
12667
f5735bb80d77 revsets: fix stray * in help topic
Martin Geisler <mg@lazybytes.net>
parents: 12660
diff changeset
76 ``hgext/*``::
12659
5aa5cbaf6efc revsets: add descriptions for sample queries in the help
Brodie Rao <brodie@bitheap.org>
parents: 12657
diff changeset
77
12808
74f6531581e8 help: use Windows cmd compatible quoting in revset help
Mads Kiilerich <mads@kiilerich.com>
parents: 12716
diff changeset
78 hg log -r "1.3::1.5 and keyword(bug) and file('hgext/*')"
12659
5aa5cbaf6efc revsets: add descriptions for sample queries in the help
Brodie Rao <brodie@bitheap.org>
parents: 12657
diff changeset
79
5aa5cbaf6efc revsets: add descriptions for sample queries in the help
Brodie Rao <brodie@bitheap.org>
parents: 12657
diff changeset
80 - Changesets in committed May 2008, sorted by user::
5aa5cbaf6efc revsets: add descriptions for sample queries in the help
Brodie Rao <brodie@bitheap.org>
parents: 12657
diff changeset
81
12808
74f6531581e8 help: use Windows cmd compatible quoting in revset help
Mads Kiilerich <mads@kiilerich.com>
parents: 12716
diff changeset
82 hg log -r "sort(date('May 2008'), user)"
12659
5aa5cbaf6efc revsets: add descriptions for sample queries in the help
Brodie Rao <brodie@bitheap.org>
parents: 12657
diff changeset
83
5aa5cbaf6efc revsets: add descriptions for sample queries in the help
Brodie Rao <brodie@bitheap.org>
parents: 12657
diff changeset
84 - Changesets mentioning "bug" or "issue" that are not in a tagged
5aa5cbaf6efc revsets: add descriptions for sample queries in the help
Brodie Rao <brodie@bitheap.org>
parents: 12657
diff changeset
85 release::
5aa5cbaf6efc revsets: add descriptions for sample queries in the help
Brodie Rao <brodie@bitheap.org>
parents: 12657
diff changeset
86
12808
74f6531581e8 help: use Windows cmd compatible quoting in revset help
Mads Kiilerich <mads@kiilerich.com>
parents: 12716
diff changeset
87 hg log -r "(keyword(bug) or keyword(issue)) and not ancestors(tagged())"