03 · Repositórios e fluxo de trabalho
Trunk-based development com branches curtas, e a main protegida por políticas que nenhum time consegue desligar.
- Nomenclatura:
<dominio>-<app>-<tipo>, por exemplofrota-abastecimento-apiefrota-abastecimento-infra. - Estrutura mínima de repo:
README, required reviewers por path,azure-pipelines.yml,/docs/adr. - Branches:
mainsempre implantável; feature branches com vida de no máximo alguns dias;release/*só quando houver suporte a múltiplas versões.
Branch policies obrigatórias na main
| Política | Configuração de referência |
|---|---|
| Revisores mínimos | 1 a 2, autor não aprova o próprio PR, reset de votos em novo push |
| Build validation | Pipeline de CI obrigatório no PR |
| Work item vinculado | Obrigatório, para rastreabilidade |
| Resolução de comentários | Obrigatória |
| Required reviewers por path | /docs/adr/* → grupo de arquitetura; /infra/* → plataforma |
| Merge strategy | Squash ou rebase linear |
| Push direto | Bloqueado, inclusive para administradores |
Versionamento
- Semantic Versioning (MAJOR.MINOR.PATCH) calculado no pipeline (GitVersion ou conventional commits), nunca à mão.
- A versão vira o nome do run, a tag git e o rótulo do artefato, o que liga as três coisas.
Indicadores: D2 · Repositórios e fluxo