Convenção para Nomes de Branches
Introdução
Uma convenção clara para os nomes de branches ajuda a manter o repositório organizado, facilita o entendimento do propósito de cada branch e melhora a colaboração entre os membros da equipe. Esta convenção define um padrão para nomear branches de maneira consistente e informativa.
Estrutura de Nomeação
A estrutura básica para nomear uma branch é: <tipo>/<descrição-curta>-<identificador>
Componentes
<tipo>: Descreve o propósito principal da branch. Exemplos de tipos:feat: Para o desenvolvimento de uma nova funcionalidade.fix: Para correções de bugs.refactor: Para refatoração de código sem adicionar novas funcionalidades.hotfix: Para correções urgentes em produção.chore: Para tarefas que não alteram o código ou funcionalidades, como atualização de dependências.test: Para desenvolvimento de testes.docs: Para alterações na documentação.ci: Para mudanças em configuração de integração contínua.perf: Para melhorias de desempenho.build: Para alterações relacionadas ao sistema de build.experiment: Para branches temporárias ou de experimentação.
<descrição-curta>: Uma breve descrição do que a branch irá tratar. Deve ser concisa, descritiva e em inglês, utilizando palavras separadas por hífens (-).<identificador>: Um identificador único que inclui:- Prefixo do tipo de projeto:
td: Representa Telediagnóstico.tc: Representa Teleconsulta.
- Identificador numérico: Pode ser o número do issue, ticket de um sistema de gestão de projetos, ou uma data (no formato
YYYYMMDD), que ajuda a rastrear o contexto ou a origem da branch.
- Prefixo do tipo de projeto:
Exemplos
Implementando uma nova funcionalidade para login de usuários em um projeto de Telediagnóstico:
feat/user-login-td123
Corrigindo um bug relacionado ao carregamento de imagens no perfil em um projeto de Teleconsulta:
fix/profile-image-load-tc456
Refatorando a lógica de autenticação em um projeto de Telediagnóstico:
refactor/authentication-td20240820
Hotfix para corrigir uma falha crítica em produção em um projeto de Teleconsulta:
hotfix/critical-bug-tc789
Atualizando a documentação sobre deploy para um projeto de Telediagnóstico:
docs/deploy-instructions-td101
Melhoria de performance no carregamento da homepage em um projeto de Teleconsulta:
perf/homepage-loading-tc112
Regras Adicionais
Uso de Caixa Baixa: Utilize sempre letras minúsculas nos nomes das branches para evitar inconsistências em ambientes com diferenciação de maiúsculas e minúsculas.
Separação com Hífen: Separe palavras no
<descrição-curta>utilizando hífens (-) para aumentar a legibilidade.Sem Caracteres Especiais: Evite o uso de caracteres especiais, espaços ou acentos nos nomes das branches. Somente letras, números e hífens são permitidos.
Branches Longas: Evite descrições muito longas. Tente manter a
<descrição-curta>com menos de 50 caracteres.Identificador de Projeto: Utilize
tdpara Telediagnóstico etcpara Teleconsulta, seguido pelo identificador numérico.
Exemplo Completo
Um exemplo de um nome de branch seguindo essa convenção poderia ser:
feat/shopping-cart-api-integration-tc345
Neste exemplo:
- `feat`: Indica que a branch é para o desenvolvimento de uma nova funcionalidade.
- `shopping-cart-api-integration`: Descreve brevemente o que está sendo implementado.
- `tc345`: Identifica o projeto como pertencente a Teleconsulta e o número do ticket.Adicionando testes unitários para a funcionalidade de pagamento em um projeto de Telediagnóstico:
test/payment-unit-tests-td678
Atualizando as dependências do projeto de Teleconsulta:
chore/update-dependencies-tc234
Implementando melhorias de desempenho no sistema de cache em um projeto de Telediagnóstico:
perf/cache-optimization-td567
Adicionando documentação para a API de integração em um projeto de Teleconsulta:
docs/api-integration-tc890
Conclusão
Seguir essa convenção para nomear branches ajuda a manter o repositório organizado e facilita a colaboração e a revisão de código. Certifique-se de aderir a essas diretrizes em todos os projetos da empresa, utilizando o identificador correto (td ou tc) conforme o tipo de projeto.