view hgext/children.py @ 8721:2816239e0020

test-fncache: Use find instead of ls -R. Different platforms implement -R differently (and it produces unneccessarily verbose output in this case). find is just as good and more consistent. Unbreaks test on OpenBSD. Edited by pmezard: added 'sort' call
author Will Maier <willmaier@ml1.net>
date Thu, 04 Jun 2009 18:11:11 -0600
parents b9403042968a
children e872ef2e6758
line wrap: on
line source

# Mercurial extension to provide the 'hg children' command
#
# Copyright 2007 by Intevation GmbH <intevation@intevation.de>
#
# Author(s):
# Thomas Arendsen Hein <thomas@intevation.de>
#
# This software may be used and distributed according to the terms of the
# GNU General Public License version 2, incorporated herein by reference.

from mercurial import cmdutil
from mercurial.commands import templateopts
from mercurial.i18n import _


def children(ui, repo, file_=None, **opts):
    """show the children of the given or working directory revision

    Print the children of the working directory's revisions. If a
    revision is given via -r/--rev, the children of that revision will
    be printed. If a file argument is given, revision in which the
    file was last changed (after the working directory revision or the
    argument to --rev if given) is printed.
    """
    rev = opts.get('rev')
    if file_:
        ctx = repo.filectx(file_, changeid=rev)
    else:
        ctx = repo[rev]

    displayer = cmdutil.show_changeset(ui, repo, opts)
    for cctx in ctx.children():
        displayer.show(cctx)


cmdtable = {
    "children":
        (children,
         [('r', 'rev', '', _('show children of the specified revision')),
         ] + templateopts,
         _('hg children [-r REV] [FILE]')),
}