This is an archive of the discontinued Mercurial Phabricator instance.

fix: fix handling of merge commits by using overlayworkingctx
ClosedPublic

Authored by spectral on Dec 18 2019, 6:32 PM.

Details

Summary

Most of this code was conceptually copied from what rebase does, with one small
difference: hgext.rebaserev.rebase uses branchmerge=True, while I had to use
branchmerge=False, or else it got really confused about updating to the same
revision in some situations. I believe that the difference is that rebase is
always dealing with *some* form of update - it never gets to mergemod.update if
the source and destination are the same, while we can encounter that situation
with fix. This may imply that this code has some issues with named branches that
should be investigated.

Diff Detail

Repository
rHG Mercurial
Lint
Automatic diff as part of commit; lint not applicable.
Unit
Automatic diff as part of commit; unit tests not applicable.

Event Timeline

spectral created this revision.Dec 18 2019, 6:32 PM
This revision was not accepted when it landed; it landed in state Needs Review.
This revision was automatically updated to reflect the committed changes.