mercurial/revset.py
changeset 18071 bea754715961
parent 18063 34a1a639d835
child 18251 a6483f827512
--- a/mercurial/revset.py	Wed Dec 12 03:19:30 2012 +0100
+++ b/mercurial/revset.py	Wed Dec 12 03:12:55 2012 +0100
@@ -646,6 +646,15 @@
 
     return [r for r in subset if r in dests]
 
+def divergent(repo, subset, x):
+    """``divergent()``
+    Final successors of changesets with an alternative set of final successors.
+    """
+    # i18n: "divergent" is a keyword
+    getargs(x, 0, 0, _("divergent takes no arguments"))
+    divergent = obsmod.getrevs(repo, 'divergent')
+    return [r for r in subset if r in divergent]
+
 def draft(repo, subset, x):
     """``draft()``
     Changeset in draft phase."""
@@ -1541,6 +1550,7 @@
     "descendants": descendants,
     "_firstdescendants": _firstdescendants,
     "destination": destination,
+    "divergent": divergent,
     "draft": draft,
     "extinct": extinct,
     "extra": extra,