Automação de Git Hook com lefthook
Decisão
- Adotar
lefthookpara gestão de Git Hooks. - Executar
biome format --writee depoisbiome check --writenos arquivos staged empre-commit. - Executar também
biome format --writeebiome check --writenos arquivos incluídos no push (mudanças commitadas) empre-push. - Centralizar definições de hook em
lefthook.ymlna raiz do repositório.
Contexto
Quando formatação ou lint são pulados localmente, as revisões incluem diffs e comentários ruidosos e não essenciais. Também havia inconsistência na configuração de hooks por desenvolvedor, então precisávamos de uma abordagem reproduzível e versionada.
Alternativas
- Hooks nativos em
.git/hookscom configuração manual: baixa reprodutibilidade e difícil compartilhamento. - Husky: opção consolidada, mas desta vez preferimos
lefthookpor configuração mais leve e simples. - Validação apenas em CI: feedback mais lento e sem detecção local precoce.
Consequências
- Verificações de qualidade são automatizadas antes de commit e antes de push.
- Problemas de formatação são detectados cedo, reduzindo inconsistência de estilo.
- Em caso de falha, commit/push é bloqueado até aplicar correções e rerodar checks.
hsb.horse