annotate mercurial/help/revisions.txt @ 22451:186fd06283b4

revset: lower weight for _intlist function The histedit command uses a revset like: (_intlist('1234\x001235')) and merge() Previously the optimizer gave a weight of 1.5 to the _intlist side (1 for the function, 0.5 for the string) which caused it to process the merge() side first. This caused it to evaluate merge against every commit in the repo, which took 2.5 seconds on a large repo. I changed the weight of _intlist to 0, since it's a trivial calculation, which makes it process intlist first, which makes merge apply only to the revs in the list. Which makes the revset take 0.15 seconds now. Cutting off 2.4 seconds off our histedit performance. >From the revset benchmark: revset #25: (_intlist('20000\x0020001')) and merge() 0) obsolete feature not enabled but 54243 markers found! ! wall 0.036767 comb 0.040000 user 0.040000 sys 0.000000 (best of 100) 1) obsolete feature not enabled but 54243 markers found! ! wall 0.000198 comb 0.000000 user 0.000000 sys 0.000000 (best of 9084)
author Durham Goode <durham@fb.com>
date Fri, 12 Sep 2014 14:21:18 -0700
parents 4edd179fefb8
children bbb5cc55ab8b
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
9540
cad36e496640 help: un-indent help topics
Martin Geisler <mg@lazybytes.net>
parents: 9539
diff changeset
1 Mercurial supports several ways to specify individual revisions.
9539
c904e76e3834 help: move help topics from mercurial/help.py to help/*.txt
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
2
9540
cad36e496640 help: un-indent help topics
Martin Geisler <mg@lazybytes.net>
parents: 9539
diff changeset
3 A plain integer is treated as a revision number. Negative integers are
cad36e496640 help: un-indent help topics
Martin Geisler <mg@lazybytes.net>
parents: 9539
diff changeset
4 treated as sequential offsets from the tip, with -1 denoting the tip,
cad36e496640 help: un-indent help topics
Martin Geisler <mg@lazybytes.net>
parents: 9539
diff changeset
5 -2 denoting the revision prior to the tip, and so forth.
9539
c904e76e3834 help: move help topics from mercurial/help.py to help/*.txt
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
6
9540
cad36e496640 help: un-indent help topics
Martin Geisler <mg@lazybytes.net>
parents: 9539
diff changeset
7 A 40-digit hexadecimal string is treated as a unique revision
cad36e496640 help: un-indent help topics
Martin Geisler <mg@lazybytes.net>
parents: 9539
diff changeset
8 identifier.
9539
c904e76e3834 help: move help topics from mercurial/help.py to help/*.txt
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
9
9540
cad36e496640 help: un-indent help topics
Martin Geisler <mg@lazybytes.net>
parents: 9539
diff changeset
10 A hexadecimal string less than 40 characters long is treated as a
cad36e496640 help: un-indent help topics
Martin Geisler <mg@lazybytes.net>
parents: 9539
diff changeset
11 unique revision identifier and is referred to as a short-form
cad36e496640 help: un-indent help topics
Martin Geisler <mg@lazybytes.net>
parents: 9539
diff changeset
12 identifier. A short-form identifier is only valid if it is the prefix
cad36e496640 help: un-indent help topics
Martin Geisler <mg@lazybytes.net>
parents: 9539
diff changeset
13 of exactly one full-length identifier.
9539
c904e76e3834 help: move help topics from mercurial/help.py to help/*.txt
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
14
16740
43cfe56121d3 help: include bookmarks in 'help revisions' and simplify wording
Kevin Bullock <kbullock@ringworld.org>
parents: 9999
diff changeset
15 Any other string is treated as a bookmark, tag, or branch name. A
43cfe56121d3 help: include bookmarks in 'help revisions' and simplify wording
Kevin Bullock <kbullock@ringworld.org>
parents: 9999
diff changeset
16 bookmark is a movable pointer to a revision. A tag is a permanent name
20245
4edd179fefb8 help: branch names primarily denote the tipmost unclosed branch head
Mads Kiilerich <madski@unity3d.com>
parents: 16740
diff changeset
17 associated with a revision. A branch name denotes the tipmost open branch head
4edd179fefb8 help: branch names primarily denote the tipmost unclosed branch head
Mads Kiilerich <madski@unity3d.com>
parents: 16740
diff changeset
18 of that branch - or if they are all closed, the tipmost closed head of the
4edd179fefb8 help: branch names primarily denote the tipmost unclosed branch head
Mads Kiilerich <madski@unity3d.com>
parents: 16740
diff changeset
19 branch. Bookmark, tag, and branch names must not contain the ":" character.
9539
c904e76e3834 help: move help topics from mercurial/help.py to help/*.txt
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
20
16740
43cfe56121d3 help: include bookmarks in 'help revisions' and simplify wording
Kevin Bullock <kbullock@ringworld.org>
parents: 9999
diff changeset
21 The reserved name "tip" always identifies the most recent revision.
9539
c904e76e3834 help: move help topics from mercurial/help.py to help/*.txt
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
22
9540
cad36e496640 help: un-indent help topics
Martin Geisler <mg@lazybytes.net>
parents: 9539
diff changeset
23 The reserved name "null" indicates the null revision. This is the
cad36e496640 help: un-indent help topics
Martin Geisler <mg@lazybytes.net>
parents: 9539
diff changeset
24 revision of an empty repository, and the parent of revision 0.
9539
c904e76e3834 help: move help topics from mercurial/help.py to help/*.txt
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
25
9540
cad36e496640 help: un-indent help topics
Martin Geisler <mg@lazybytes.net>
parents: 9539
diff changeset
26 The reserved name "." indicates the working directory parent. If no
cad36e496640 help: un-indent help topics
Martin Geisler <mg@lazybytes.net>
parents: 9539
diff changeset
27 working directory is checked out, it is equivalent to null. If an
cad36e496640 help: un-indent help topics
Martin Geisler <mg@lazybytes.net>
parents: 9539
diff changeset
28 uncommitted merge is in progress, "." is the revision of the first
cad36e496640 help: un-indent help topics
Martin Geisler <mg@lazybytes.net>
parents: 9539
diff changeset
29 parent.