--- a/hgext/evolve.py Fri Aug 07 13:59:19 2015 -0700
+++ b/hgext/evolve.py Wed Jun 24 16:27:36 2015 -0700
@@ -1708,10 +1708,17 @@
targets = newer[0]
assert targets
if len(targets) > 1:
- msg = _("does not handle split parents yet\n")
- ui.write_err(msg)
- return 2
- target = targets[0]
+ # split target, figure out which one to pick, are they all in line?
+ targetrevs = [repo[r].rev() for r in targets]
+ roots = repo.revs('roots(%ld)', targetrevs)
+ heads = repo.revs('heads(%ld)', targetrevs)
+ if len(roots) > 1 or len(heads) > 1:
+ msg = "cannot solve split accross two branches\n"
+ ui.write_err(msg)
+ return 2
+ target = repo[heads.first()]
+ else:
+ target = targets[0]
displayer = cmdutil.show_changeset(ui, repo, {'template': shorttemplate})
target = repo[target]
if not ui.quiet or confirm: