yarn tag

Adiciona, remove ou lista as tags de um pacote.

O que são tags?

Tags de distribuição (ou dist-tags) são uma maneira de marcar versões publicadas do seu pacote com um rótulo. Usuários do seu pacote podem instalá-lo usando esse rótulo, em vez do número de versão.

Por exemplo, se você tivesse um canal de lançamento stable e um canal de lançamento canary, você poderia usar as tags como uma maneira de permitir que os usuários digitem:

yarn add seu-pacote@stable
yarn add seu-pacote@canary

Tags diferentes têm significados diferentes:

  • latest: A versão atual do pacote
  • stable: A última versão estável do pacote, normalmente o mesmo que o mais recente, a menos que tenha suporte a longo prazo (LTS)
  • beta: Um lançamento antes de se tornar a mais recente e/ou estável, usado para compartilhar as próximas mudanças antes de estarem prontas.
  • canary: uma versão “noturna” ou pré-beta - se seu projeto for atualizado com frequência e dependido por muitas pessoas, você pode usar isto para compartilhar código em estágios ainda mais iniciais.
  • dev: Útil para aqueles momentos em que você quer testar uma revisão através do registro enquanto ainda está trabalhando nas coisas.

Alguns projetos criarão suas próprias tags como acharem adequado, ou no lugar de uma tag convencional. Um exemplo disso é a tag next, usada de forma semelhante à beta.

Embora estas sejam amplamente consideradas como as tags “padrão”, a única que tem um significado concreto é a latest, que é usada para determinar qual versão instalar quando nenhuma versão for especificada.

Ressalvas

Você não pode usar tags que correspondam a números de versão em potencial, já que eles são usados no mesmo lugar e, portanto, compartilham de um mesmo namespace:

yarn add seu-pacote@<versão>
yarn add seu-pacote@<tag>

Qualquer tag que também possa ser usada como um intervalo válido semver será rejeitada. Por exemplo, você não pode ter uma tag chamada v2.3 porque isso, no padrão semver, significa >= 2.3.0 <2.4.0.

De modo geral, evite o uso de tags que se pareçam com versões, já que elas costumam apenas confundir as pessoas.

Comandos

yarn tag add <pacote>@<versão> <tag>

Adiciona uma tag chamada <tag> a uma <versão> específica de um <pacote>.

yarn tag remove <pacote> <tag>

Remove uma tag chamada <tag> de um <pacote>, a qual não está mais em uso.

Nota: Você não precisa excluir uma tag antes de movê-la para outra versão do pacote. Melhor não fazer isso.

yarn tag list [<pacote>]

Lista todas as tags de um <pacote>. Se não for especificado, o <pacote> usado será o da pasta atual na qual o comando está sendo usado.