Block > Changelog

 2 min (354 Wörter, 2125 Zeichen)

Die Versionsnummerierungen (z.B. v12.0.0) waren bisher ausgerichtet an grossen Design- und/oder Unterbau-umbauungen und haben zuletzt der Semantic Versioning (SemVer) entsprochen.

Allerdings (die Frage habe ich mir schon laenger gestellt): Ist das sinnvoll?

Koennte sich die Hauptversion nicht auch am Jahr (2024) oder an dem Alter der Website (seit diesem Jahr 18, happy birthday 🎉) ausrichten?

Anders gefragt: warum ueberhaupt eine Version? Eine Website ist ja sowieso immer im Wandel (mal mehr, mal weniger).

Bisher mochte ich es, bei groesseren Aenderungen einen Versionssprung zu machen (zugegeben waren die Versionen schon immer etwas random vergeben worden). Also bei ganz grossen Sachen die Majorversion anzupassen, bei neuen Beitraegen usw. die Minorversion und Patchlevel habe ich bisher nicht wirklich genutzt (nach SemVer), haette aber z.B. der Git Commit-Hash sein koennen.

Allerdings mochte ich es nicht, bei jedem Beitrag/Linkdump die Minorversion anzupassen bzw. einen Eintrag zu schreiben. Und der Patchlevel wurde glaube ich nie genutzt.

Daher entscheide ich mich jetzt, die Version unabhaengig von Beitraegen usw. anzupassen, denn diese haben ja ueblicherweise selbst schon ein Datum anbei.

Die Version soll anhand des Datums bestimmt werden, an dem ich eben die letzten Aenderungen zusammenfasse. Und zwar nach folgendem Schema:

Update (2024-04-01): Das hat sogar einen Namen: CalVer

Ansonsten verlasse ich mich auf die 10 letzten Aenderungen auf der Changelog-Seite.

Flo (2024-02-26, 02:17)

FWIW: Ich verwende (auf Arbeit) mittlerweile git tags + git describe + eine Packung Regex für die Versionsvergabe, was dann so aussieht:

vX.Y.Z.N[-name]-shorthash

vX.Y.Z vergebe ich selber per git tag (erster Commit in einer neuen Version), N wird berechnet als Anzahl der Commits seit dem letzten Versionstag, shorthash ist der gekürzte Commit-Hash , und name ist optional im Tag enthalten (also entweder v1.2.3 oder v1.2.3-foo).

Y (2024-02-26, 22:48)

Wenn ich das Schema mal (ohne name) uebernehme, kommt bei mir fuer die aktuelle Version das hier raus:

2024.02.25.71-3babd0d

Waere auf jeden Fall auch eine Idee, danke 😊
Auch eine Moeglichkeit waere z.B. das hier:

$ git describe --tags --long --match "v*"
v2024.02.25-4-gc580cbe

Update (2024-10-28): Weitere Gedanken zur Release-Versionierung von Software-Projekten

Update (2024-11-06): Und dann gibt es auch noch ZeroVer 😅


 Goto

Beitraginfos

 2024-02-25, 17:47:23
 2024-11-06, 10:19:13
  website
 Permalink

Ähnliche Beiträge