Semver-Rechner — Vergleichen, Erhöhen & Bereiche testen

Alles rund um semantische Versionen an einem Ort: Vergleiche zwei Versionen, berechne die nächste Major/Minor/Patch/Prerelease-Version und sieh genau, welche Versionen ein npm-Range wie ^1.2.0 oder ~2.3 erlaubt – verständlich erklärt.

Aktualisiert am

Vergleichen

Erhöhen

Bereichsprüfung

Deine Daten verlassen nie deinen Computer. Die Verarbeitung erfolgt zu 100 % lokal im Browser.

So nutzt du: Semver-Rechner

  1. Vergleichen: Gib zwei Versionen ein, um zu sehen, welche neuer ist und warum (inklusive Prerelease und Build-Metadaten).
  2. Erhöhen: Gib die aktuelle Version ein und klicke auf die Art der Änderung, um die nächste Version zu erhalten – sie wird automatisch kopiert.
  3. Range prüfen: Gib einen npm-Range wie ^1.2.0, ~1.2, 1.x oder >=1.2 <2 sowie eine Liste von Versionen ein.
  4. Lies die verständliche Erklärung und sieh, welche Versionen den Range erfüllen.

Semantische Versionierung: MAJOR.MINOR.PATCH

TeilErhöhen, wenn…Beispiel
MAJORdu inkompatible Änderungen machst1.4.2 → 2.0.0
MINORdu abwärtskompatible Funktionen hinzufügst1.4.2 → 1.5.0
PATCHdu abwärtskompatible Fehler behebst1.4.2 → 1.4.3
Prereleasedu eine Testversion veröffentlichst2.0.0-beta.1
Build-Metadatendu einen Build markierst (bei der Reihenfolge ignoriert)1.4.2+sha.5114f85

npm-Range-Spickzettel

RangeBedeutungErlaubt
^1.2.3Kompatibel mit 1.2.3>=1.2.3 <2.0.0
^0.2.3Bei 0.x gilt Minor als „Major“>=0.2.3 <0.3.0
~1.2.3Nur Patch-Updates>=1.2.3 <1.3.0
1.x / 1Jede 1.y.z>=1.0.0 <2.0.0
1.2.3 - 2.3Bindestrich-Bereich>=1.2.3 <2.4.0
>=1.2 <1.5 || 2.xEine der beiden Mengen1.2.0–1.4.x oder 2.x

Prereleases passen nur dann zu einem Range, wenn ein Komparator in derselben Menge ein Prerelease auf derselben major.minor.patch-Version hat – ^1.2.0 passt also nicht zu 1.3.0-beta.1, ^1.3.0-beta.0 dagegen schon. So installierst du nicht versehentlich instabile Versionen.

Ranges stehen in deiner package.json. Um die nächste Version anhand deiner Commits festzulegen, nutze den Changelog-Generator; zum Taggen des Releases den Git-Befehl-Generator.

Auch gesucht als: semver range checker, npm version range, caret vs tilde, semantic versioning, versionsnummer erhöhen, versionen vergleichen, semver prerelease, semver checker.

Passende Tools zu: Semver-Rechner

  • GitHub Actions Workflow-Generator — Wähle deinen Stack, deine Trigger und Schritte aus und erhalte eine kommentierte .github/workflows/ci.yml — Installation, Zwischenspeicherung, Lint, Test, Build, eine Versionsmatrix und optional die Bereitstellung auf GitHub Pages, Vercel oder in einer Container-Registry.
  • Zahlensystem-Umrechner — Gib eine Zahl in einer beliebigen Basis ein und sieh sie sofort in allen anderen.
  • Diff-Checker — Füge die Originalversion und eine geänderte Version ein, um hinzugefügte, entfernte und geänderte Zeilen nebeneinander zu sehen – wobei die genauen Wörter, die sich geändert haben, in jeder Zeile hervorgehoben sind.
  • YAML-Validator — Füge eine Docker-Compose-Datei, ein Kubernetes-Manifest, einen GitHub-Actions-Workflow oder beliebiges YAML ein, um Fehler genau zu finden, typische Stolperfallen zu erkennen und eine sauber formatierte Version zu erhalten.

Häufige Fragen

Kann ich das als Semver-Tester verwenden?
Ja. Gib einen Range wie ^1.2.0, ~2.3 oder >=1.0 <2.0 und eine Liste von Versionen ein: Jede Version wird als passend oder nicht passend markiert, zusammen mit einer verständlichen Erklärung des Ranges.
Was ist der Unterschied zwischen ^ und ~ in package.json?
^1.2.3 erlaubt Minor- und Patch-Updates (bis einschließlich, aber nicht 2.0.0). ~1.2.3 erlaubt nur Patch-Updates (bis 1.3.0). Bei 0.x-Versionen ist ^ strenger: ^0.2.3 erlaubt nur 0.2.x.
Ist 1.10.0 neuer als 1.9.0?
Ja. Jeder Teil wird als Zahl verglichen, nicht als Text, also gilt 10 > 9.
Wie werden Prerelease-Versionen verglichen?
Ein Prerelease ist niedriger als die normale Version: 2.0.0-beta.1 < 2.0.0. Die Prerelease-Kennungen werden Teil für Teil verglichen – Zahlen numerisch, Text alphabetisch, und Zahlen gelten als niedriger als Text.
Spielen Build-Metadaten (+build) eine Rolle?
Nein, beim Vergleichen von Versionen werden Build-Metadaten ignoriert: 1.0.0+20261026 und 1.0.0+abc sind in der Reihenfolge gleichwertig.
Kann ich Semver-Rechner als Web-App installieren und offline nutzen?
Ja. Semver-Rechner ist eine installierbare Web-App (PWA) – sie wird über Ihren Browser installiert und nicht aus einem App-Store heruntergeladen. Klicken Sie oben auf dieser Seite in Chrome oder Edge (Windows, macOS, Linux, ChromeOS) auf „App installieren“ oder verwenden Sie auf Android-Geräten „Teilen“ → „Zum Startbildschirm hinzufügen“ auf dem iPhone und iPad bzw. „Datei“ → „Zum Dock hinzufügen“ in Safari 17+ auf einem Mac. Die App öffnet sich dann in einem eigenen Fenster mit einem eigenen Symbol, und da sie vollständig in Ihrem Browser ausgeführt wird, funktioniert sie auch offline. Firefox auf dem Desktop kann keine Web-Apps installieren. So funktioniert die Installation.

Ähnliche Tools