Show More
@@ -29,8 +29,9 b' branching.' | |||
|
29 | 29 | ''' |
|
30 | 30 | |
|
31 | 31 | from mercurial.i18n import _ |
|
32 | from mercurial.node import nullid, nullrev, hex, short | |
|
32 | from mercurial.node import nullid, nullrev, bin, hex, short | |
|
33 | 33 | from mercurial import util, commands, repair, extensions, pushkey, hg, url |
|
34 | from mercurial import revset | |
|
34 | 35 | import os |
|
35 | 36 | |
|
36 | 37 | def write(repo): |
@@ -536,6 +537,26 b' def updatecurbookmark(orig, ui, repo, *a' | |||
|
536 | 537 | setcurrent(repo, rev) |
|
537 | 538 | return res |
|
538 | 539 | |
|
540 | def bmrevset(repo, subset, x): | |
|
541 | args = revset.getargs(x, 0, 1, _('bookmark takes one or no arguments')) | |
|
542 | if args: | |
|
543 | bm = revset.getstring(args[0], | |
|
544 | _('the argument to bookmark must be a string')) | |
|
545 | bmrev = listbookmarks(repo).get(bm, None) | |
|
546 | if bmrev: | |
|
547 | bmrev = repo.changelog.rev(bin(bmrev)) | |
|
548 | return [r for r in subset if r == bmrev] | |
|
549 | bms = set([repo.changelog.rev(bin(r)) for r in listbookmarks(repo).values()]) | |
|
550 | return [r for r in subset if r in bms] | |
|
551 | revset.symbols['bookmark'] = bmrevset | |
|
552 | ||
|
553 | def revsetdoc(): | |
|
554 | doc = help.loaddoc('revsets')() | |
|
555 | doc += _('\nAdded by the bookmarks extension:\n\n' | |
|
556 | '``bookmark([name])``\n' | |
|
557 | ' The named bookmark or all bookmarks.\n') | |
|
558 | return doc | |
|
559 | ||
|
539 | 560 | cmdtable = { |
|
540 | 561 | "bookmarks": |
|
541 | 562 | (bookmark, |
@@ -62,6 +62,28 b' list bookmarks' | |||
|
62 | 62 | $ hg add b |
|
63 | 63 | $ hg commit -m 1 |
|
64 | 64 | |
|
65 | bookmarks revset | |
|
66 | ||
|
67 | $ hg log -r 'bookmark()' | |
|
68 | changeset: 1:925d80f479bb | |
|
69 | tag: X | |
|
70 | tag: X2 | |
|
71 | tag: tip | |
|
72 | user: test | |
|
73 | date: Thu Jan 01 00:00:00 1970 +0000 | |
|
74 | summary: 1 | |
|
75 | ||
|
76 | $ hg log -r 'bookmark(Y)' | |
|
77 | $ hg log -r 'bookmark(X2)' | |
|
78 | changeset: 1:925d80f479bb | |
|
79 | tag: X | |
|
80 | tag: X2 | |
|
81 | tag: tip | |
|
82 | user: test | |
|
83 | date: Thu Jan 01 00:00:00 1970 +0000 | |
|
84 | summary: 1 | |
|
85 | ||
|
86 | ||
|
65 | 87 | bookmarks X and X2 moved to rev 1, Y at rev -1 |
|
66 | 88 | |
|
67 | 89 | $ hg bookmarks |
General Comments 0
You need to be logged in to leave comments.
Login now