Comparador de Semver
Compare números de versão semântica. Analise e ordene strings semver, verifique se uma versão satisfaz um intervalo e compreenda as diferenças entre major/minor/patch.
Compare Two Versions
1.2.3
OLDER
2.0.0-beta.1MAJOR version change
| Major | Minor | Patch | Pre-release | |
|---|---|---|---|---|
| 1.2.3 | 1 | 2 | 3 | — |
| 2.0.0-beta.1 | 2 | 0 | 0 | beta.1 |
Version Range Check
✓ 1.5.0 satisfies ^1.2.0
Sort Version List
One version per line — sorted newest first
13.0.0-beta.1beta.1
22.1.0
32.1.0-11
42.0.0-rc.1rc.1
51.2.3
61.0.0
71.0.0-betabeta
81.0.0-alphaalpha
Como Usar Comparador de Semver
- 1Digite dois números de versão para comparar (por exemplo, 1.2.3 vs 2.0.0).
- 2Veja qual é mais recente e o que mudou (major/minor/patch).
- 3Ordene uma lista de versões semver.
- 4Verifique se uma versão satisfaz uma restrição de intervalo como ^1.2.0.
ZenovayAnalytics
Analytics feito para fundadores.
- Acompanhamento de visitantes em tempo real
- Privacidade em primeiro lugar, sem banner de cookies
- Configurado em dois minutos
Ferramentas Relacionadas
Formatador e Validador de JSON
Formate, valide e embeleze dados JSON com destaque de sintaxe e detecção de erros.Decodificador JWT
Decodifique e inspecione tokens JWT. Visualize cabeçalho, payload e verifique assinaturas.Codificar/Decodificar Base64
Codifique texto para Base64 ou decodifique Base64 de volta para texto. Suporta dados UTF-8 e binários.Encode/Decode de URL
Codifique ou decodifique componentes de URL. Trate caracteres especiais, strings de consulta e URLs completas.Perguntas Frequentes
O que é semantic versioning?▾
Semantic versioning (semver) é uma convenção de versionamento usando o formato MAJOR.MINOR.PATCH. MAJOR: mudanças de API incompatíveis (ruptura). MINOR: nova funcionalidade compatível com versões anteriores. PATCH: correções de bugs compatíveis com versões anteriores. Versões pré-lançamento anexam um hífen e identificadores: 1.0.0-alpha, 1.0.0-beta.1, 1.0.0-rc.1. Metadados de compilação anexam um sinal de mais: 1.0.0+build.42. Definido em semver.org por Tom Preston-Werner (cofundador do GitHub).
Como as versões semver são comparadas?▾
As versões são comparadas da esquerda para a direita: MAJOR primeiro, depois MINOR, depois PATCH. Quando esses são iguais, uma versão pré-lançamento tem menor precedência do que o lançamento: 1.0.0-alpha < 1.0.0. Os identificadores pré-lançamento são comparados como números se numéricos, strings de outro modo (lexicograficamente). Pré-lançamento mais longo tem precedência mais alta quando todos os campos anteriores correspondem: 1.0.0-alpha < 1.0.0-alpha.1 < 1.0.0-alpha.beta < 1.0.0-beta < 1.0.0-beta.2.
O que os operadores de intervalo de versão npm significam?▾
^1.2.3 (circunflexo): compatível com, permite atualizações MINOR e PATCH — ≥1.2.3 <2.0.0. ~1.2.3 (til): aproximadamente equivalente, permite apenas atualizações PATCH — ≥1.2.3 <1.3.0. 1.2.x ou 1.2.*: qualquer PATCH. * ou x: qualquer versão. >1.2.3, >=1.2.3, <2.0.0: intervalos explícitos. 1.2.3 - 2.3.4: intervalo inclusivo. Esses intervalos são avaliados por npm, Yarn, pnpm e ferramentas como Renovate e Dependabot.
Quando devo incrementar MAJOR vs MINOR vs PATCH?▾
MAJOR (x.0.0): quando você faz mudanças incompatíveis de API — funções removidas, assinaturas de função alteradas, mudanças de comportamento de ruptura, flags CLI deletadas. MINOR (1.x.0): quando você adiciona funcionalidade de forma compatível com versões anteriores — novas funções, novos parâmetros opcionais, novas opções de configuração. PATCH (1.0.x): quando você faz correções de bugs compatíveis com versões anteriores — corrigindo comportamento incorreto, patches de segurança, melhorias de desempenho sem mudança de API.
Qual é a diferença entre metadados de pré-lançamento e compilação?▾
Pré-lançamento (1.0.0-alpha.1): afeta a precedência da versão — 1.0.0-alpha.1 < 1.0.0. Usado para alpha, beta, release candidates. Metadados de compilação (1.0.0+build.1): NÃO afeta a precedência da versão — 1.0.0+build.1 == 1.0.0 para fins de comparação. Metadados de compilação são frequentemente usados para números de compilação CI, hashes de commit git ou timestamps de compilação. Pela especificação semver, duas versões diferindo apenas em metadados de compilação são iguais.