Je travaille sur un projet où j'ai un commit qui a introduit une fonctionnalité avec des problèmes majeurs qui n'ont pas été découverts immédiatement. Maintenant, je veux complètement supprimer cette révision tout en gardant le travail qui suit, mais j'ai du mal à envelopper ma tête autour de cette fusion à 3 voies. Voici un graphique simplifié de mon projet.Comment les 3 voies fusionnent-elles dans Mercurial/Meld?
o changeset: 134:7f81764aa03a | tag: tip | parent: 128:451d8a19edea | summary: Backed out changeset 451d8a19edea | | @ changeset: 133:5eefa40e2a29 | | summary: (Change I need to keep keep) | | *snip 3 commits* | o changeset: 129:5f6182a97d40 |/ summary: (Change I need to keep keep) | o changeset: 128:451d8a19edea | summary: (Change that introduced a major problem) | o changeset: 127:4f26dc55455d | summary: (summary doesn't matter for this question)
Si je comprends bien, r127 et r134 sont exactement les mêmes. Lorsque je hg up -C -r 133
, puis exécutez hg merge
, Meld apparaît avec trois formes de l'un de mes fichiers: local, base et autre. local semble être r133 mais j'ai du mal à comprendre ce que "base" et "autre" veulent dire.
Donc, vous dites que beaucoup de choses vont fusionner manuellement? – Pacerier