2014-02-07 4 views
73

Ich habe mehrere widersprüchliche Definitionen auf verschiedenen Git-Flow-Websites gesehen. Gibt es eine offizielle Empfehlung oder eine einzige Quelle der Wahrheit?Git Flow Freigabe Zweige und Tags - mit oder ohne "v" Präfix

Branchen: release/1.2.3 oder release/v1.2.3

Schlagwörter: 1.2.3 oder v1.2.3

+0

Siehe auch http://stackoverflow.com/questions/2006265/is-there-a-standard-naming-convention-for-git-tags – Raedwald

Antwort

65

Nun, im Grunde ist es eine Frage der Präferenz, aber ich ziehe die Version mit dem v, wie Semver es so tut, und ich versuche, um dieser Spezifikation so nahe wie möglich zu folgen, um eine vernünftige Versionierung zu erhalten.

Es macht es auch leichter für diese Tags filtern, wie Sie v und dann die TAB Taste für die automatische Vervollständigung drücken: Dadurch werden alle Tags Liste (und vielleicht ein paar Zweige), während es mehrere Stellen ein Tag sind könnte mit beginnen.


Siehe auch: Is there a standard naming convention for git tags?

+2

Danke, das macht Sinn. Ich denke, es ist interessant zu sehen, dass das Git Flow Projekt ** nicht ** die v Präfixe verwendet: https://github.com/nvie/gitflow Aus den Gründen, die Sie und @VonC gepostet haben, bevorzuge ich immer noch Versions-Tags Dazu gehört das Präfix v. – friederbluemle

+25

Semver hat das Präfix * v * in Version 2 entfernt. – schmijos

+1

Siehe: https://github.com/mojombo/semver/blob/master/semver.md#user-content-is-v123-a-semantic-version – Leo

22

Da v für die Version steht, werden Tags im Allgemeinen vX.Y.Z genannt, mit X.Y.Z Semantic Versioning 2.0.0 folgen.

Dadurch können Verzweigungen X.Y.Z mit diesen Tags koexistieren, ohne dass eine Fehlermeldung wie "fatal: Ambiguous object name" (wie in "Ambiguous Names with GIT?") ausgegeben werden muss.

Beachten Sie, dass die Tags für Git selbst kürzlich aus einem überraschenden Grund "angepasst" wurden: siehe "Code version change “rules”".

+1

Wenn Leute Best Practice wie _semver_ verwenden, verwenden sie wahrscheinlich ein System wie _Git Flow_ oder etwas Ähnliches. Das würde diesen Konflikt von Refs verhindern (Zweig eq-Tag-Name). Abgesehen davon, was würde man davon abhalten, einen Zweig 'vX.Y.Z' zu nennen? Das ist nicht wirklich so ein Argument :) – kaiser

+0

@VonC perfekte Antwort. – Leo

+2

semver 2.0 http://semver.org sagt nichts über die Tags aus, die benötigt werden, um mit einem "v" Präfix zu beginnen! – jankal