Wie wird die Mercurial-Commit-Nachricht nach der Verzweigung bearbeitet?

8

Ich habe einige alte Commit-Nachrichten in einem Mercurial-Repository, die geändert werden sollten (um einige neue Tools anzupassen). Ich verstehe bereits, dass dieses Hacking im Master-Repository durchgeführt werden muss und alle lokalen Repositories neu geklont werden müssen, da sich auch die Prüfsummen aller nachfolgenden Changesets ändern.

Ich habe versucht, die Rezepte in " zu bearbeiten, wie inkorrekt Commit Nachrichten in Mercurial? ", aber mit MQ-Erweiterung habe ich stecken auf Fehlermeldung

%Vor%

und mit Histedit ziemlich ähnlich

%Vor%

Das Problem scheint zu sein, dass nach dem Änderungssatz Zweige erstellt wurden.

Ich kann sehen, wie es chaotisch werden würde, wenn ich den Inhalt des Patches ändern möchte, aber vielleicht gibt es einen Workaround, den ich für die Bearbeitung der Commit-Nachricht verpasst habe?

    
Imre 17.11.2011, 02:12
quelle

3 Antworten

4

Ich würde dafür eine gehackte Version der Erweiterung verwenden. Die Erweiterung kann hg → hg Conversions durchführen, mit denen Sie die Namen von Autor und Zweig ändern können. Es gibt keine Unterstützung für das Ändern von Commit-Nachrichten noch, aber Sie können es hacken.

Insbesondere sollten Sie das getcommit ändern Methode von:

%Vor%

welches für das Lesen der alten Commits verantwortlich ist. Ändern Sie das

%Vor%

bis

%Vor%

und implementieren Sie dann die Funktion adjust am Anfang der Datei:

%Vor%     
Martin Geisler 01.12.2011 13:04
quelle
2

Wenn es sich um zufällige / doppelte Verzweigungen aufgrund der Verwendung von --amend und push --force handelt, dann entferne sie zuerst und versuche 'histedit' erneut, wische dann den zentralen Repo auf bitbucket ab; versuche folgendes, was bei mir funktioniert:

Untersuchen Sie das Repository-Protokoll und suchen Sie nach Verzweigungen. Sie können die GraphlogExtension verwenden, die Sie zuerst aktivieren müssen :

%Vor%

Aktivieren Sie die MqExtension und entfernen Sie alle Zweige.

%Vor%

Wenn nötig, ändern Sie den Commit auf "Entwurf" (siehe Phasen ) und führen Sie "histedit" erneut aus Sei jetzt gut.

%Vor%     
Daniel Sokolowski 30.08.2013 16:25
quelle
0

Ich brauchte etwas Ähnliches, also habe ich eine Funktion angefordert .

    
Gili 18.08.2013 05:46
quelle