2010-04-26 6 views
16

This website sagt hg tag 1.0 ist mein Mercurial-Repository zu einem Tag-Namen zu bekommen.Wie zu markieren und zu einem Tag in hg gehen

Wie kann ich mein Repository zu diesem Tag-Namen wechseln?

$ hg tag myTag1.0 
$ <edit more files> 
$ hg commit -m "a message" 
$ hg how to go back to that tag? 

Und wenn ich ein neues hg commit hier machen, was passieren wird? Wird es in die Filiale von myTag1.0 gehen? Oder wird es auf dem Standardzweig bleiben?

Antwort

30

Tags sind keine Zweige. Tags sind Markierungen für ein bestimmtes Commit - im Prinzip eine Art Commits zu benennen. Das ist alles. Sie "wechseln ein Repository nicht zu einem Tag", genauso wenig wie Sie "ein Repository zu einem Commit wechseln" - Sie können ein Tag auschecken, aber es wird lediglich die Arbeitskopie auf das entsprechende Changeset zurückgesetzt, das markiert wurde .

Verzweigungen werden automatisch in Mercurial erstellt, wenn Sie Code festschreiben, der nicht direkt von der aktuellen Hauptversion abschneidet.

Sehen Sie hier für einige weitere Details:

https://www.mercurial-scm.org/wiki/Tag

https://www.mercurial-scm.org/wiki/Branch

4

dem Tag Name Aktualisieren Sie einfach.

hg tag 1.0 
... make changes ... 
hg ci 
hg up 1.0 
+5

Das Problem mit diesem ist, dass Tags als Änderungen an der .hgtags-Datei übergeben werden. So wie folgt aus: Changeset: 350: e6e05f8b7536 tag: Spitze Beschreibung: hinzugefügt tag 1.0 für changset 5d0862b8c30b Changeset 349: 5d0862b8c30b tag: 1.0 Beschreibung: Fehler behoben X und Y, 1,0 anstehenden Tests. Aber jetzt, wenn Sie 1.0 hg, sind die Tags nicht vorhanden, so dass jedes Commit hier einen Zweig (neuen Kopf) erstellen wird, wo 1.0 nicht markiert ist. Nicht so sehr ein Problem, aber etwas, das Sie beachten müssen. – bobpaul

+0

Hmm .. die Formatierung wird nicht beibehalten, oder? – bobpaul

Verwandte Themen