martinvonz added inline comments.
> if set(newps) == set(oldps) and dest not in newps:
> - # The error message is for compatibility. It's a bit misleading since
> - # rebase is not supposed to add new parents.
> - raise error.Abort(_('cannot use revision %d as base, '
> - 'result would have 3 parents') % rev)
> + raise error.Abort(_('cannot find new parents for revision %d') % rev)
I feel like "Cannot rebase merge commit %d without rebasing at least one its
parents" would be more specific and still be accurate.
It would be nice if we could detect the case upfront, but if we determine the
destination dynamically including looking at obsmarkers, that may be difficult
To: quark, #hg-reviewers
Cc: martinvonz, mercurial-devel
Mercurial-devel mailing list