A correspondência de chapéu pode ser considerada "quebrada" porque não será atualizada ^0.1.2
para 0.2.0
. Quando o software estiver emergindo, use 0.x.y
versões e a correspondência de chapéu corresponderá apenas ao último dígito variável ( y
). Isso é feito de propósito. O motivo é que, enquanto o software está evoluindo, a API muda rapidamente: um dia você tem esses métodos e, outro dia, esses métodos e os antigos desaparecem. Se você não deseja quebrar o código para as pessoas que já estão usando sua biblioteca, você incrementa a versão principal: por exemplo 1.0.0
- -> 2.0.0
-> 3.0.0
. Assim, quando seu software finalmente estiver 100% pronto e com todos os recursos, será semelhante à versão 11.0.0
e isso não parece muito significativo e, na verdade, parece confuso. Se você estava, por outro lado, usando ->0.1.x
->0.2.x
0.3.x
versões da Quando o software estiver finalmente 100% pronto e com todos os recursos, ele será lançado como versão1.0.0
e significa "Esta versão é um serviço de longo prazo, você pode prosseguir e usar esta versão da biblioteca em seu código de produção, e o autor não mudará tudo amanhã ou no próximo mês e não abandonará o pacote".
A regra é: use o 0.x.y
controle de versão quando o software ainda não amadurecer e libere-o incrementando o dígito do meio quando a API pública for alterada (portanto, as pessoas que ^0.1.0
não receberem 0.2.0
atualizações não receberão o código). Em seguida, quando o software amadurecer, libere-o abaixo 1.0.0
e aumente o dígito mais à esquerda cada vez que sua API pública for alterada (portanto, as pessoas que ^1.0.0
não tiverem 2.0.0
atualizações serão atualizadas e o código não será quebrado).
Given a version number MAJOR.MINOR.PATCH, increment the:
MAJOR version when you make incompatible API changes,
MINOR version when you add functionality in a backwards-compatible manner, and
PATCH version when you make backwards-compatible bug fixes.
npm config set save-prefix=''
. (Coloque~
as aspas, se preferir.) Pessoalmente, faço isso e encolho as coisas na produção.