[GIT] Tags - Aula 20
Tags
Tags são marcadores usados para identificar pontos específicos no histórico do repositório, geralmente para marcar versões importantes, como lançamentos de software.
Tipos de Tags
Tags Anotadas (Annotated Tags)
-
Armazenam metadados, como nome do autor, data e uma mensagem descritiva.
-
São recomendadas para versões oficiais do projeto.
-
São salvas no banco de dados do Git como objetos completos.
Tags Simples (Lightweight Tags)
-
São apenas ponteiros para um commit específico.
-
Não armazenam informações adicionais.
Vamos nos concentrar nas Tags Anotadas.
Criando Tags
Para criar uma Tag:
git tag -a Nome_da_tag -m "Mensagem"
Para listar todas as Tags:
git tag
Para exibir Informações de uma Tag:
git show Nome_da_tag
Para criar uma Tag para um Commit específico:
git tag -a Nome_da_tag Commit_Hash -m "Mensagem"
Também podemos enviar as Tags para o repositório remoto.
Tag específica:
git push origin Nome_da_tag
Todas as Tags:
git push --tags
Removendo Tags
Localmente:
git tag -d Nome_da_tag
No repositório remoto:
git push origin --delete Nome_da_tag
SemVer
Conforme dito anteriormente, as Tags geralmente são usadas para indicar as versões do projeto, uma boa prática para nomear as versões no Git é o SemVer (Semantic Versioning).
Formato SemVer:
MAJOR.MINOR.PATCH
MAJOR (versão principal) = Incrementado quando há mudanças incompatíveis com versões anteriores.
MINOR (versão secundária) = Incrementado quando há novas funcionalidades compatíveis com versões anteriores.
PATCH (correção de bugs) = Incrementado para pequenas correções e melhorias que não quebram compatibilidade.
Exemplo
Versão:
1.2.3
1 = Major
2 = Minor
3 = Path
Atualização (Path):
1.2.4
Pequena correção de bug na versão 1.2.3
.
Atualização (Minor):
1.3.3
Nova funcionalidade adicionada sem quebrar nada.
Atualização (Major):
2.0.0
Mudança que quebra compatibilidade, exigindo que os usuários façam ajustes no código.