Merge nur eine änderungsmenge von einem Zweig
Ich bin neu auf mercurial und ich habe gelesen, dass es nicht möglich ist zu fusionieren nur eine separate änderungsmenge von einem Zweig.
Dann weiß ich nicht, was ist der beste Ansatz zu lösen:
- Ich fange mit einem stabilen revision R1
- Ich die Entwicklung weiterhin auf R1: CS1,CS2,CS3
- Irgendwann muss ich lösen Fehler aus meinem Stall revision R1. Und ich möchte nur ein changeset aus Entwicklungs-Linie (fe CS2)
Was ist die beste Herangehensweise? Wie das Zusammenführen hat nicht funktioniert, was ich getan habe, ist einen patch der CS2 und dann den patch anwenden in der neuen stable-Zweig, um den Fehler zu beheben. Das ist der Mercurial Weg?
Cheers,
- Graft-es: stackoverflow.com/questions/16898906/...
Du musst angemeldet sein, um einen Kommentar abzugeben.
Den Transplantat-Erweiterung automatisiert, was Sie getan haben, um einen einzigen Befehl.
Aber ich denke, die bevorzugte Art und Weise (die je nach Szenario ist nicht immer möglich) ist, um das Update auf oben
R1
in den ersten Platz, und dann verschmelzen Sie, dass für Ihre Entwicklung Tipp.Ist:
R1
.cs1...csN
.R1
, so dass Siehg update R1
.R2
.hg update csN
.hg merge R2
,hg commit
...csN+1
.UPDATE: Keine Notwendigkeit für eine Erweiterung mehr als der Hg 2.0
Als 'gemeiner Kerl' hingewiesen, das ist genau das, was die graft Befehl für die war eingeführt in Hg 2.0.
SourceTree
Der einfachste Weg, dies zu tun ist mit einem GUI wie SourceTree, klicken Sie einfach doppelt auf die ZIEL-Zweig zu wechseln, und drücken Sie dann die Rechte Maus-Taste auf eine beliebige andere revision und wählen Sie die "Graft" - Kommando (seltsamerweise kann es auch eine überarbeitung des aktuellen Zweigs).
Wenn es keine Konflikte gibt SourceTree wird sofort erstellen Sie eine neue revision für den aktuellen Zweig.
TortoiseHg
Genau das gleiche, wählen Sie die ZIEL-Branch, dann rmb über die revision, die Sie wollen graft: Wie graft mit TortoiseHg
Befehlszeile
Dazu mit der Kommandozeile wechseln Sie einfach auf die ZIEL-branch und führen Sie dann
mit {revision_number} offensichtlich ist die Nummer der revision, die Sie wollen, integrieren Sie den aktuellen Zweig. So erstellen Sie einen neuen änderungssatz in der Sie den aktuellen Zweig mit allen Dateien, die aus der revision, deren Anzahl Sie in dem Befehl.
Erfahren Sie mehr über die graft-Befehl, Lesen Sie diesen thread hier auf stackoverflow