Skip to content

Convenção para Tags

Tags no Git são marcadores que apontam para commits específicos no histórico do repositório. Elas são frequentemente usadas para marcar versões de releases ou pontos importantes no desenvolvimento do projeto.

O uso adequado de tags no Git facilita a rastreabilidade e o gerenciamento de versões dentro de um projeto. Tags ajudam a organizar o histórico de desenvolvimento e permitem um acesso rápido e fácil a versões específicas do código, além de facilitar a realização de rollback em caso de necessidade.

Tipos de Tags

  1. Tags Leves (Lightweight Tags):

    • São basicamente ponteiros simples para um commit específico.
    • Não possuem metadados adicionais como nome do criador ou data.
    • Uso: Marcar rapidamente um ponto específico, sem necessidade de uma anotação formal.
    • Exemplo de criação:
      bash
      git tag v1.0.0
  2. Tags Anotadas (Annotated Tags):

    • Armazenam mais informações, como o nome do criador, data e uma mensagem associada.
    • São armazenadas como objetos completos no banco de dados do Git.
    • Uso: Marcar releases ou milestones importantes que exigem rastreabilidade e documentação.
    • Exemplo de criação:
      bash
      git tag -a v1.0.0 -m "First official release"

Como e Quando Criar Tags

  • Durante Releases:

    • É uma prática comum criar uma tag para cada versão estável de um software. Isso facilita o rastreamento de versões específicas.
    • Exemplo:
      bash
      git tag -a v2.1.0 -m "Release of version 2.1.0 with new features"
  • Para Marcar Milestones:

    • Tags podem ser usadas para identificar pontos importantes no desenvolvimento, como a conclusão de um grande recurso ou correção de um bug crítico.
    • Exemplo:
      bash
      git tag -a milestone-feature-x -m "Feature X completion milestone"

Como Usar Tags

  • Padrão de Nomeação:

    • Sempre a tag deve conter o número da versão com o prefixo "v".
    • Exemplo: v1.0.0, v2.1.0, v4.5.14.
  • Criação de Tags ao Fazer Merge na Master:

    • A tag deve ser criada toda vez que for feito o merge na branch master. Isso facilitará o rastreio da versão e, caso surja a necessidade, também permitirá realizar rollback para a versão anterior.
    • Exemplo de comando para criar a tag após o merge:
      bash
      git tag -a v1.2.3 -m "Merge version 1.2.3 into master"
      git push origin v1.2.3

Trabalhando com Tags

  • Listar Tags:

    • Para ver todas as tags disponíveis no repositório:
      bash
      git tag
  • Mostrar Detalhes de uma Tag:

    • Para visualizar os detalhes de uma tag anotada:
      bash
      git show v1.0.0
  • Subir Tags para o Repositório Remoto:

    • Por padrão, as tags não são empurradas automaticamente para o repositório remoto. Você deve empurrá-las manualmente:
      bash
      git push origin v1.0.0
    • Para empurrar todas as tags de uma vez:
      bash
      git push --tags
  • Remover Tags:

    • Para deletar uma tag localmente:
      bash
      git tag -d v1.0.0
    • Para deletar uma tag no repositório remoto:
      bash
      git push origin --delete tag v1.0.0

Boas Práticas para Uso de Tags

  1. Versionamento Semântico (SemVer):

    • Adote uma convenção de nomeação para tags, como o Versionamento Semântico (exemplo: v1.0.0).
    • Isso ajuda a manter clareza e consistência sobre o significado de cada tag.
  2. Documentação das Tags:

    • Sempre que possível, adicione mensagens descritivas nas tags anotadas para documentar o contexto e a importância do commit marcado.
  3. Consistência no Uso:

    • Utilize tags de forma consistente para que a equipe possa facilmente identificar versões de releases, hotfixes ou milestones.