Versionierungskonzepte
Versionierungskonzepte umfassen Verfahren, Regeln und Strukturen zur Kennzeichnung von Artefakten wie Software, APIs oder Datenbank-Schemata mit Versionsnummern. Ziel ist Transparenz über Veränderungen, Nachvollziehbarkeit von Releases sowie die Verwaltung von Kompatibilität und Abhängigkeiten über die Zeit.
Sie unterscheiden sich von der allgemeinen Versionskontrolle. Die Versionskontrolle dokumentiert den Verlauf des Quellcodes (Änderungen, Commit-Historie),
Ein verbreitetes Modell ist Semantic Versioning (SemVer): MAJOR.MINOR.PATCH. MAJOR erhöht sich bei inkompatiblen Änderungen, MINOR bei
Alternativen sind CalVer (Calender Versioning) mit Jahres- und Monatsangaben (z. B. 2024.11) oder einfache fortlaufende Nummern.
Bei APIs und Datenbanken regelt Versionierung die Kompatibilität von Endpunkten und Schemaänderungen. API-Versionen ermöglichen abwärtskompatible Übergänge,
Releases werden oft mit Changelogs, Release Notes und Tags in Versionskontrollsystemen dokumentiert. Eine konsistente Versionierung erleichtert
Best Practices umfassen klare Regeln für Versionsnummern, Vermeidung von Umlabeln bereits veröffentlichter Versionen, Beibehaltung historischer Versionen,