Semver-Rechner
Parse, vergleiche, prüfe Ranges, erhöhe und korrigiere semantische Versionen in deinem Browser. Eingegebene Versionen bleiben auf deinem Gerät.
Eingegebene Versionen und Ranges werden lokal in deinem Browser ausgewertet und nie hochgeladen.
Brauchst du eine schnelle eindeutige ID? Probiere den UUID-Generator.
Über Semver-Rechner
Dieser Semver-Rechner ist ein Werkzeugkasten für Semantic Versioning für alles, was du mit Versionsnummern tust. Parse eine Version wie 1.2.3-beta.1+build.42 in ihre Major-, Minor-, Patch-, Prerelease- und Build-Metadaten; vergleiche zwei Versionen, um zu sehen, welche neuer ist und auf welcher Ebene sie sich unterscheiden; prüfe, ob eine Version einen npm-Range wie ^1.2.3, ~1.2, 1.x oder >=1.0.0 <2.0.0 erfüllt; erhöhe eine Version um Major, Minor, Patch oder einen beliebigen Prerelease-Schritt; und korrigiere einen losen String wie v1.2 zu einem sauberen semver. Er ist für Entwickler, Paketautoren und Release-Ingenieure gemacht, die täglich über Abhängigkeits-Ranges nachdenken. Angetrieben von derselben semver-Bibliothek, die npm verwendet, läuft jede Berechnung in deinem Browser, sodass die eingegebenen Versionen auf deinem Gerät bleiben.
Funktionen
- Parse eine Version in Major, Minor, Patch, Prerelease-Bezeichner und Build-Metadaten
- Vergleiche zwei Versionen und sieh die Beziehung (A > B, A = B, A < B) plus die Diff-Ebene
- Prüfe, ob eine Version einen Range wie ^1.2.3, ~1.2, 1.x oder >=1.0.0 <2.0.0 erfüllt
- Sieh eine Vorschau einiger Beispielversionen mit Bestanden/Durchgefallen gegen den eingegebenen Range
- Erhöhe um major, minor, patch, premajor, preminor, prepatch oder prerelease
- Korrigiere lose Strings wie v1.2 oder 1.2.3.4 zu einem gültigen semver
- Validiere die Eingabe live, mit einer klaren Meldung, wenn eine Version oder ein Range fehlerhaft ist
- Kopiere jedes Ergebnisfeld mit einem Klick
So verwendest du Semver-Rechner
- Wähle einen Modus: Parse, Vergleichen, Range, Erhöhen oder Korrigieren.
- Tippe eine Version (und je nach Modus eine zweite Version oder einen Range).
- Lies die Live-Ergebnisse in den Info-Zeilen und Badges unter den Eingaben.
- Kopiere den Wert, den du brauchst, etwa die erhöhte Version oder die Diff-Ebene.
Beispiel
Eingabe
version: 1.5.0
range: ^1.2.3
Ausgabe
1.5.0 satisfies ^1.2.3 ✓
1.6.0 → pass 2.0.0 → fail
Ein Caret-Range ^1.2.3 erlaubt alles bis zur, aber nicht einschließlich der nächsten Major-Version (2.0.0).
Häufige Fehler & Fehlerbehebung
- Parse sagt, eine Version sei ungültig, obwohl sie in Ordnung aussieht. — Semver braucht alle drei Teile. Verwende 1.2.0 statt 1.2 und halte Prerelease/Build nach einem Bindestrich/Plus, z. B. 1.2.3-rc.1+build.5.
- Ein Range wie 1.2 oder ^1.2 verhält sich anders als erwartet. — 1.2 wird als 1.2.x behandelt, und ^1.2 erlaubt bis zur nächsten Major-Version. Verwende die Beispielversionen im Range-Modus, um genau zu bestätigen, was besteht.
- Das Erhöhen zu Prerelease erzeugt 1.2.4-0 statt vom selben Patch auszugehen. — Von einem stabilen 1.2.3 bewegt ein Prerelease-Bump zuerst zum nächsten Patch (1.2.4-0). Verwende premajor/preminor/prepatch, um zu steuern, welcher Teil erhöht wird.
- Korrigieren lässt einen Teil deiner Eingabe weg, z. B. 1.2.3.4 wird zu 1.2.3. — Die Korrektur findet die erste Drei-Zahlen-Sequenz und ignoriert den Rest, sodass ein viertes Segment oder nachgestellter Text absichtlich verworfen wird.
Häufig gestellte Fragen
- Was erlaubt der Range ^1.2.3?
- Ein Caret-Range ^1.2.3 erlaubt jede Version, die die ganz linke Nicht-Null-Stelle nicht ändert, sodass er 1.2.3 bis ausschließlich 2.0.0 trifft. Für 0.x-Versionen verschärfen sich die Regeln: ^0.2.3 erlaubt 0.2.3 bis 0.3.0.
- Wie wird eine Prerelease-Version mit einem stabilen Release verglichen?
- Ein Prerelease hat eine niedrigere Präzedenz als sein zugehöriges Release, sodass 1.0.0-rc.1 kleiner als 1.0.0 ist. Prereleases werden Feld für Feld verglichen: Bezeichner werden sortiert, und numerische Bezeichner rangieren unter längeren oder alphanumerischen.
- Was ist der Unterschied zwischen ~1.2 und ^1.2?
- Tilde ~1.2 erlaubt Änderungen auf Patch-Ebene innerhalb von 1.2 (>=1.2.0 <1.3.0), während Caret ^1.2 Minor- und Patch-Änderungen bis zur nächsten Major-Version erlaubt (>=1.2.0 <2.0.0). Verwende den Range-Modus, um Beispielversionen bestehen oder durchfallen zu sehen.
- Wie behandelt dieser Semver-Rechner Build-Metadaten?
- Build-Metadaten nach einem Pluszeichen (zum Beispiel +build.42) werden geparst und angezeigt, aber beim Vergleich der Präzedenz ignoriert, sodass 1.0.0+a und 1.0.0+b als gleiche Versionen gelten.
- Was macht das Korrigieren einer Version?
- Die Korrektur verwandelt einen losen String in ein gültiges semver, indem sie die erste major.minor.patch-Sequenz findet, die sie kann. So wird v1.2 zu 1.2.0, 1.2.3.4 zu 1.2.3 und release-3.1 zu 3.1.0; fehlende Teile werden auf null gesetzt.
- Um welche Release-Typen kann ich erhöhen?
- Du kannst um major, minor, patch, premajor, preminor, prepatch oder prerelease erhöhen. Die pre-Varianten starten eine Prerelease-Linie auf dem gewählten Teil, zum Beispiel ergibt ein premajor auf 1.2.3 die 2.0.0-0.
Verwandte Tools
Alle ArrayKit-Tools