Git Flow Release-Zweige und -Tags - mit oder ohne "v" -Präfix


Antworten:


100

Nun, im Grunde ist es eine Frage der Präferenz, aber ich bevorzuge die Version mit der v, wie Semver es so macht, und ich versuche, diese Spezifikation so genau wie möglich zu befolgen, um eine vernünftige Versionierung zu erhalten.

Dies erleichtert auch das Filtern nach diesen Tags, da Sie drücken vund dann die TAB-Taste für die automatische Vervollständigung drücken können : Dadurch werden alle Tags (und möglicherweise einige Zweige) aufgelistet, während ein Tag mehrere Ziffern enthalten kann.


Siehe auch: Gibt es eine Standard-Namenskonvention für Git-Tags?


2
Danke, das macht Sinn. Ich finde es interessant zu sehen, dass das Git Flow-Projekt selbst nicht die v-Präfixe verwendet: github.com/nvie/gitflow Aus den Gründen, die Sie und @VonC veröffentlicht haben, bevorzuge ich weiterhin Versions-Tags, die das v-Präfix enthalten.
Friederbluemle

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


9
@schmijos @LeoTM - Das Dokument gibt nur an, dass v1.2.3 keine semantische Version ist. Die Frage betraf Git-Tags. Tatsächlich wird das Semver-Repo immer noch v2.0.0als Tag für Version 2 verwendet: github.com/mojombo/semver/releases/tag/v2.0.0
friederbluemle

1
semver 2.0 semver.org gibt nichts über die Tags an, die benötigt werden, um mit einem "v" -Präfix zu beginnen!
Jankal

30

Da v für Version steht, werden Tags im Allgemeinen als vX.YZ bezeichnet, wobei XYZ auf Semantic Versioning 2.0.0 folgt .

Auf diese Weise können Zweige XYZ mit diesen Tags koexistieren, ohne dass Fehlermeldungen wie "fatal: Mehrdeutiger Objektname" (wie in " Mehrdeutige Namen mit GIT? ") Behandelt werden müssen .

Beachten Sie, dass die Tags für Git selbst kürzlich aus einem überraschenden Grund "angepasst" wurden: siehe " Regeln zur Änderung der Codeversion ".


1
Wenn Leute Best Practices wie Semver verwenden , verwenden sie wahrscheinlich ein System wie Git Flow oder ähnliches. Das würde diesen Konflikt von refs (Name des Verzweigungs-EQ-Tags) verhindern. Abgesehen davon, was würde einen davon abhalten, einen Zweig zu benennen vX.Y.Z? Das ist nicht wirklich ein Streit :)
Kaiser

3
semver 2.0 semver.org gibt nichts über die Tags an, die benötigt werden, um mit einem "v" -Präfix zu beginnen!
Jankal

@ Jankal Ich stimme zu. Ich habe nur Semver für die XYZ-Richtlinie erwähnt.
VonC

Ein kleines Argument ist, dass mehr Menschen bekommen v1.2.3als b1.2.3:-)
Ciro Santilli 郝海东 冠状 病 六四 六四 法轮功

3

https://semver.org/#is-v123-a-semantic-version

Ist "v1.2.3" eine semantische Version? Nein, "v1.2.3" ist keine semantische Version. Das Präfixieren einer semantischen Version mit einem „v“ ist jedoch eine gängige Methode (auf Englisch), um anzuzeigen, dass es sich um eine Versionsnummer handelt. Die Abkürzung für "Version" als "v" wird häufig bei der Versionskontrolle verwendet. Beispiel: Git-Tag v1.2.3 -m "Release Version 1.2.3". In diesem Fall ist "v1.2.3" ein Tag-Name und die semantische Version ist "1.2.3".

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.