diff mercurial/commands.py @ 1550:ccb9b62de892

add a -r/--rev option to heads to show only heads descendant from rev
author Benoit Boissinot <benoit.boissinot@ens-lyon.org>
date Wed, 16 Nov 2005 12:08:25 +0100
parents 4dea10839201
children e793cbc8be00
line wrap: on
line diff
--- a/mercurial/commands.py	Tue Nov 15 20:35:10 2005 +0100
+++ b/mercurial/commands.py	Wed Nov 16 12:08:25 2005 +0100
@@ -1286,11 +1286,14 @@
     changesets. They are where development generally takes place and
     are the usual targets for update and merge operations.
     """
-    heads = repo.changelog.heads()
+    if opts['rev']:
+        heads = repo.heads(repo.lookup(rev))
+    else:
+        heads = repo.heads()
     br = None
     if opts['branches']:
-        br = repo.branchlookup(heads)
-    for n in repo.changelog.heads():
+        br = repo.branchlookup(list(heads))
+    for n in heads:
         show_changeset(ui, repo, changenode=n, brinfo=br)
 
 def identify(ui, repo):
@@ -2237,8 +2240,9 @@
          "hg grep [OPTION]... PATTERN [FILE]..."),
     "heads":
         (heads,
-         [('b', 'branches', None, _('find branch info'))],
-         _('hg heads [-b]')),
+         [('b', 'branches', None, _('find branch info')),
+          ('r', 'rev', None, _('show only heads descendants from rev'))],
+         _('hg heads [-b] [-r <rev>]')),
     "help": (help_, [], _('hg help [COMMAND]')),
     "identify|id": (identify, [], _('hg identify')),
     "import|patch":