Zum Hauptinhalt springen

Semantic Versioning

Version number MAJOR.MINOR.PATCH


Eine Version, häufig auch englisch revision genannt, ist ein definiertes Entwicklungsstadium einer Software oder einer Dokumentation mit allen dazugehörigen Komponenten. Verschiedene Versionen stellen die Veränderung und Weiterentwicklung einer Software oder eines Teils (z. B. Programmbibliothek, Dokumentation über die Zeit dar, sie haben immer eine gemeinsame historische Basis. So werden Systeme zur Versionierung genutzt, um neuere Ausgaben einer Software von einer älteren zu unterscheiden.

Verschiedene numerische, alphanumerische oder auch datumsbasierte Versionsnummern werden zur Unterscheidung und Bezeichnung herangezogen. Der Prozess wird oft durch ein Versionsverwaltungssystem technisch begleitet.

Ein Versuch, die Software-Versionierung zu standardisieren, ist Semantic Versioning d. h. der Aufbau der Versionsnummern wird mit Bedeutung versehen. Dabei besteht die Version im Wesentlichen aus drei (durch je einen Punkt getrennten) natürlichen Zahlen (in der folgenden Liste dahinter die Bedeutung einer Inkrementierung der jeweiligen Version):

  • die major version: eine neue Version darf auch Veränderungen beinhalten, die die API inkompatibel mit früheren Versionen werden lassen.
  • die minor version: neue Funktionalität wurde rückwärtskompatibel hinzugefügt
  • die patch version: die Software wurde rückwärtskompatibel korrigiert.