Ist das richtig? Zusammenführen zwischen stabilen und Standardzweigen in Mercurial mit TortoiseHg

8

Ich bin neu bei Mercurial und verwende das Stable / Default Branching-System. Wir sind alle auf Windows hier, und ich versuche, alle anderen in diesem System arbeiten zu lassen. Wir benutzen alle TortoiseHg. Ich versuche zu dokumentieren, wie man Änderungen in Stable- und Tag-Versionen zusammenführt, aber ich benutze Mercurial erst seit ungefähr drei Wochen, also bin ich mir nicht einmal sicher, ob ich das richtig mache. Außerdem scheint TortoiseHg einige Optionen zu verpassen, die über die Befehlszeile verfügbar sind. Aber ich muss dies über die Windows-Shell erledigen, sonst wird es hier nicht übernommen.

Alle unsere Programmierarbeiten werden standardmäßig ausgeführt, und der stabile Zweig wird nur für Versionen der Software verwendet. Eine Sache, die mich glauben lässt, dass ich etwas falsch mache, ist, dass ich nach jeder Zusammenführung den stabilen Zweig wieder herstellen muss. Ist das normal? Scheint kontraintuitiv.

Unten ist das Verfahren, das ich geschrieben habe. Bitte zögern Sie nicht, auf meine Idiotie hinzuweisen oder Fragen zu stellen. Und vielen Dank im Voraus für Kommentare.

Auf meinem Laptop gibt es zwei Verzeichnisse für jedes Projekt. Das Verzeichnis devel speichert einen Klon des Standardzweigs

================

Zusammenführen der Zweige und Erstellen einer stabilen Version, TortoiseHg

- Commit im devel-Repository.

- Öffnen Sie das lokale Verzeichnis von devel.

- Starten Sie HgWorkbench.

- Klicken Sie auf die letzte stabile Version des stabilen Zweiges.

- Wählen Sie Zusammenführen mit lokalen ...

aus

- Synchronisieren Sie und übertragen Sie Änderungen an das Remote-Repository.

- Gehe zum lokalen stabilen Repository.

- Synchronisieren Sie und ziehen Sie aus dem Remote-Repository.

- Aktualisierung auf den letzten Standardzweig. Die Auswahl "update to tip" sollte am besten sein.

- SchildkröteHg - & gt; verpflichten. Übernehmen, um "stabil" zu verzweigen. Sie müssen einen neuen Zweig neu erstellen. Wenn es fragt, wählen Sie "Restart Branch".

- Öffnen Sie HgWorkbench und fügen Sie ein Tag für die neueste stabile Version hinzu. Beispiel "Version X.X"

- Synchronisieren und Push an das Remote-Repository. Verwenden Sie die Schaltfläche Optionen im Dialogfeld Synchronisierung, um den Dialog "Synchronisierungsoptionen" aufzurufen. Geben Sie im unteren Feld "Branch" "stable"

ein

- Kehre zum lokalen "devel" -Repository zurück.

- Synchronisieren Sie und ziehen Sie aus dem Remote-Repository. Verwenden Sie die Schaltfläche Optionen im Dialogfeld Synchronisierung, um den Dialog "Synchronisierungsoptionen" aufzurufen. Stellen Sie im unteren Feld "Branch" sicher, dass das Feld leer ist. Andernfalls wird standardmäßig der Zweig "stable" verwendet.

    
user1372617 03.05.2012, 15:50
quelle

1 Antwort

6

Es ist nicht nötig, dass der zweite Klon das erreicht, was Sie wollen, und ich denke, dass es Komplexität dort hinzufügt, wo es nicht benötigt wird.

Das würde ich tun:

  1. Habe einen einzelnen Klon des Repository
  2. Commit im Zweig default
  3. Start HgWorkbench
  4. Klicken Sie mit der rechten Maustaste auf den letzten Änderungssatz im Zweig stable
  5. Wählen Sie Update... im Popup-Menü und drücken Sie den Update Button im Popup-Fenster (verwenden Sie die Standardoptionen)
  6. Klicken Sie mit der rechten Maustaste auf den letzten Änderungssatz im Zweig default
  7. Wählen Sie Merge with local...
  8. Wenn der Arbeitsverzeichnisstatus als sauber angezeigt wird (sollte dies sein), klicken Sie auf die Schaltfläche Next
  9. Wenn es keine Zusammenführungskonflikte gibt (auch wenn es keine Entwicklung in stable gibt), klicken Sie erneut auf die Schaltfläche Next
  10. Geben Sie eine Commit-Nachricht ein und klicken Sie auf die Schaltfläche Commit und dann auf Finish im nächsten Schritt
  11. Klicken Sie mit der rechten Maustaste auf den letzten Änderungssatz im Zweig stable und wählen Sie Tag... , geben Sie den Namen des Tags ein und drücken Sie die Taste Add .
  12. Klicken Sie mit der rechten Maustaste auf den letzten Änderungssatz im Zweig default und wählen Sie Update... unter Verwendung der Standardoptionen erneut

Sie haben jetzt einen Zweig stable getaggt und sind wieder im Zweig default , um mit der Entwicklung fortzufahren. Wenn Sie bereit sind, eine neue stable -Version freizugeben, wiederholen Sie die obigen Schritte ab Schritt 3.

    
Steve Kaye 03.05.2012, 16:55
quelle

Tags und Links