--- a/mercurial/commands.py Thu Feb 02 10:04:55 2017 +0100
+++ b/mercurial/commands.py Thu Feb 02 10:05:22 2017 +0100
@@ -1854,60 +1854,6 @@
with repo.wlock(False):
return cmdutil.copy(ui, repo, pats, opts)
-@command('debugsuccessorssets',
- [],
- _('[REV]'))
-def debugsuccessorssets(ui, repo, *revs):
- """show set of successors for revision
-
- A successors set of changeset A is a consistent group of revisions that
- succeed A. It contains non-obsolete changesets only.
-
- In most cases a changeset A has a single successors set containing a single
- successor (changeset A replaced by A').
-
- A changeset that is made obsolete with no successors are called "pruned".
- Such changesets have no successors sets at all.
-
- A changeset that has been "split" will have a successors set containing
- more than one successor.
-
- A changeset that has been rewritten in multiple different ways is called
- "divergent". Such changesets have multiple successor sets (each of which
- may also be split, i.e. have multiple successors).
-
- Results are displayed as follows::
-
- <rev1>
- <successors-1A>
- <rev2>
- <successors-2A>
- <successors-2B1> <successors-2B2> <successors-2B3>
-
- Here rev2 has two possible (i.e. divergent) successors sets. The first
- holds one element, whereas the second holds three (i.e. the changeset has
- been split).
- """
- # passed to successorssets caching computation from one call to another
- cache = {}
- ctx2str = str
- node2str = short
- if ui.debug():
- def ctx2str(ctx):
- return ctx.hex()
- node2str = hex
- for rev in scmutil.revrange(repo, revs):
- ctx = repo[rev]
- ui.write('%s\n'% ctx2str(ctx))
- for succsset in obsolete.successorssets(repo, ctx.node(), cache):
- if succsset:
- ui.write(' ')
- ui.write(node2str(succsset[0]))
- for node in succsset[1:]:
- ui.write(' ')
- ui.write(node2str(node))
- ui.write('\n')
-
@command('debugtemplate',
[('r', 'rev', [], _('apply template on changesets'), _('REV')),
('D', 'define', [], _('define template keyword'), _('KEY=VALUE'))],