D1082: split: new extension to split changesets

martinvonz (Martin von Zweigbergk) phabricator at mercurial-scm.org
Tue Dec 19 22:21:54 UTC 2017


martinvonz added inline comments.

INLINE COMMENTS

> split.py:90
> +
> +        descendants = list(repo.revs('(%d::) - (%d)', ctx, ctx))
> +        alloworphaned = obsolete.isenabled(repo, obsolete.allowunstableopt)

s/ctx/rev/ seems a little clearer (I realize that ctx has a __int__ method, but I didn't know that until I read this)

> split.py:95
> +            # won't cause conflicts for sure.
> +            torebase = list(repo.revs('%ld - (%ld & obsolete())::', descendants,
> +                                      descendants))

Do we want to exclude all troubled commits? Maybe phase- and content-divergent ones are better to not rebase too? (I.e. '%ld - obsolete() - troubled()')

> split.py:98
> +            if not alloworphaned and len(torebase) != len(descendants):
> +                raise error.Abort(_('split will leave orphaned changesets '
> +                                    'behind'))

maybe s/will/would/ ?

> split.py:109
> +
> +        cmdutil.bailifchanged(repo, merge=False)
> +

Do we really want to allow splitting when there's an unfinished merge? Or is that handled elsewhere?

REPOSITORY
  rHG Mercurial

REVISION DETAIL
  https://phab.mercurial-scm.org/D1082

To: quark, #hg-reviewers
Cc: lothiraldan, martinvonz, dlax, mercurial-devel


More information about the Mercurial-devel mailing list