EMZETT.
Login

Semantic Versioning

Kurz: Semantic Versioning (SemVer) nummeriert Programmversionen als MAJOR.MINOR.PATCH, zum Beispiel 2.4.1, und gibt jeder Stelle eine feste Bedeutung.

Genauer: PATCH steigt bei Fehlerkorrekturen ohne Änderung der Schnittstelle, MINOR bei neuen, abwärtskompatiblen Funktionen, MAJOR bei Änderungen, die bestehenden Code brechen können. So erkennt man am Versionssprung, wie riskant ein Update ist.

Im Detail

  • Versionsbereiche: ^1.2.3 (npm) erlaubt Updates bis zur nächsten Major-Version, ~1.2.3 nur Patches.
  • 0.x.y: Noch keine stabile Schnittstelle, jede Änderung kann brechen.
  • Vor-Versionen: 1.0.0-beta.2.
  • Änderungsprotokoll: Ein Changelog nennt die Änderungen pro Version.
  • Lockfile: package-lock.json friert die genauen Versionen ein.

Siehe auch: Git-Branching (Workflows), Open-Source-Lizenzen (MIT, Apache, GPL)