evolve: commit the transaction if conflicts occur while merging content-div
Yes, let's commit the transaction in case conflicts occur. Yes, this is what
unshelve does and this is one of the reasons we don't like unshelve.
Previous patches added support for resolving content-divergence when they are on
different parents with parent of one being the gca. In such cases, we relocate
one of the divergent commit to the parent of another one.
All the relocation stuff and merging divergent changeset stuff happens in a
single transaction, so if there are conflicts while merging, we abort and the
transaction rollsback and our relocated commit is not applied after abort.
We don't want to process the relocation because that can lead to conflicts and
we will have dirty wdir because of resolving conflicts.
So, we commit the transaction when merging results in conflicts to make sure if
relocation happened, we commit that.
This fixes the absence of relocation commit found in previous patch and uncover
a new bug about handling of relocated commit. Upcoming patch will fix it.
Source: mercurial-evolve
Section: vcs
Priority: optional
Maintainer: Logilab <contact@logilab.fr>
Uploaders:
Julien Cristau <julien.cristau@logilab.fr>,
Pierre-Yves David <pierre-yves.david@logilab.fr>,
Standards-Version: 3.9.3
Build-Depends:
mercurial (>= 4.1),
python,
debhelper (>= 8),
python-sphinx (>= 1.0.8),
imagemagick,
librsvg2-bin,
wget,
Python-Version: >= 2.6
Homepage: https://www.mercurial-scm.org/doc/evolution/
Package: mercurial-evolve
Architecture: all
Depends:
${python:Depends},
${misc:Depends},
mercurial (>= 4.1),
Description: evolve extension for Mercurial
This package provides the experimental "evolve" extension for the Mercurial
DVCS.
.
This extension provides several commands to mutate history and deal with issues
it may raise.