Ich habe eine Fusion vermasselt. Ich würde gerne zurückkehren und es dann erneut versuchen.
Gibt es eine Möglichkeit, eine Zusammenführung zurückzusetzen, bevor sie festgeschrieben wird?
hg revert
macht nicht das, was ich möchte, sondern setzt nur den Text der Dateien zurück. Mercurial bricht meinen zweiten Zusammenführungsversuch ab und beschwert sich, dass die ursprüngliche Zusammenführung noch nicht festgeschrieben ist.
Gibt es eine Möglichkeit, eine Zusammenführung nach einem hg merge
Befehl rückgängig zu machen , bevor dieser festgeschrieben wird?
Antworten:
hg update -C <one of the two merge changesets>
quelle
--clean
ist ein Synonym für-C
. Ich bin nicht sicher, auf welches Änderungsset.
es sich beziehen wird, aber es wird immer eines der beiden zusammengeführten Änderungssätze sein..
sollte bis zu jeder Revision bereinigt werden, die Sie vor Beginn der Zusammenführung vorgenommen haben. Wenn Sie also bei r42 waren, versucht haben, mit r43 zu verschmelzen, fehlgeschlagen oder bereinigt sind, wären Sie wieder auf einem makellosen r42.hg update --clean
funktioniert, wie.
es der implizite Standard zu sein scheint - es ist jedoch nicht explizit dokumentiert ..
im Zusammenhang mit einer Zusammenführung ist eher mehrdeutig.Nachdem Sie dies getan haben
hg merge
, aber zuvorhg commit
, hat Ihre Arbeitskopie zwei übergeordnete Elemente: Das erste übergeordnete Element ist das Änderungsset, auf das Sie vor dem Zusammenführen aktualisiert wurden, und das zweite übergeordnete Element ist das Änderungsset, mit dem Sie zusammenführen. Mercurial lässt Sie nicht nochhg merge
einmal zu, solange Ihre Arbeitskopie zwei Eltern hat.Sie haben zwei Möglichkeiten, um fortzufahren:
Wenn Sie die Zusammenführung abbrechen und zu Ihrem Ausgangspunkt zurückkehren möchten, tun Sie dies
Dadurch wird die Arbeitskopie so aktualisiert, dass sie mit dem ersten übergeordneten Element übereinstimmt: Das
.
bezeichnet immer das erste übergeordnete Element der Arbeitskopie.Wenn Sie einige Dateien erneut zusammenführen möchten, tun Sie dies
Dadurch werden die Zusammenführungstools genauso neu gestartet wie damals
hg merge
. Der Befehl zumhg merge
Auflösen ist gut, wenn Sie zur Zeit feststellen, dass Ihre Zusammenführungstools schlecht konfiguriert sind: Korrigieren Sie die Konfiguration und führen Sie sie aushg resolve --all
. Sie könnenhg resolve
so oft ausführen, wie Sie möchten, bis Sie mit der Zusammenführung zufrieden sind.quelle