hgext/evolve.py
changeset 1446 a73d1ee48003
parent 1443 6c122c975125
child 1447 09206bdc2db4
equal deleted inserted replaced
1445:6fd6c98f9f70 1446:a73d1ee48003
  2020             exc.hint = _('do you want --merge?')
  2020             exc.hint = _('do you want --merge?')
  2021             raise
  2021             raise
  2022 
  2022 
  2023     children = [ctx for ctx in wparents[0].children() if not ctx.obsolete()]
  2023     children = [ctx for ctx in wparents[0].children() if not ctx.obsolete()]
  2024     displayer = cmdutil.show_changeset(ui, repo, {'template': shorttemplate})
  2024     displayer = cmdutil.show_changeset(ui, repo, {'template': shorttemplate})
  2025     if not children:
       
  2026         ui.warn(_('no non-obsolete children\n'))
       
  2027         return 1
       
  2028     if len(children) == 1:
  2025     if len(children) == 1:
  2029         c = children[0]
  2026         c = children[0]
  2030         bm = bmactive(repo)
  2027         bm = bmactive(repo)
  2031         shouldmove = opts.get('move_bookmark') and bm is not None
  2028         shouldmove = opts.get('move_bookmark') and bm is not None
  2032         ret = hg.update(repo, c.rev())
  2029         ret = hg.update(repo, c.rev())
  2035                 repo._bookmarks[bm] = c.node()
  2032                 repo._bookmarks[bm] = c.node()
  2036                 repo._bookmarks.write()
  2033                 repo._bookmarks.write()
  2037             else:
  2034             else:
  2038                 bmdeactivate(repo)
  2035                 bmdeactivate(repo)
  2039         displayer.show(c)
  2036         displayer.show(c)
  2040         return 0
  2037         result = 0
  2041     else:
  2038     elif children:
  2042         for c in children:
  2039         for c in children:
  2043             displayer.show(c)
  2040             displayer.show(c)
  2044         ui.warn(_('multiple non-obsolete children, '
  2041         ui.warn(_('multiple non-obsolete children, '
  2045             'explicitly update to one of them\n'))
  2042                   'explicitly update to one of them\n'))
  2046         return 1
  2043         result = 1
       
  2044     else:
       
  2045         ui.warn(_('no non-obsolete children\n'))
       
  2046         result = 1
       
  2047     return result
  2047 
  2048 
  2048 def _reachablefrombookmark(repo, revs, mark):
  2049 def _reachablefrombookmark(repo, revs, mark):
  2049     """filter revisions and bookmarks reachable from the given bookmark
  2050     """filter revisions and bookmarks reachable from the given bookmark
  2050     yoinked from mq.py
  2051     yoinked from mq.py
  2051     """
  2052     """