Skip to content

Git e Versionamento

Visão geral das práticas de controle de versão adotadas pela equipe.

Nosso Fluxo

Trabalhamos com Git + GitLab seguindo padrões profissionais de mercado:

Develop → Feature Branch → Commits → Push → Merge Request → CI/CD → Merge

Pilares do Nosso Processo

1. Conventional Commits

Mensagens de commit padronizadas e legíveis.

bash
feat(auth): adiciona login com Google
fix(api): corrige validação de CPF
docs: atualiza README

Conventional Commits (visão rápida)
Guia Completo de Commits (mais detalhes avançados)


2. Branches

Estratégia de branches para organizar o desenvolvimento.

main → produção
develop → desenvolvimento ativo
feature/* → novas funcionalidades
release/* → qualidade
fix/* → correções

3. Merge Requests

Todo código vai para produção via Merge Request.

✅ 1 aprovação obrigatória
✅ CI/CD precisa passar
✅ Sem merge direto na main (nem Maintainers)


4. Code Review

Revisão de código para manter qualidade.

WARNING

Em construção. Esta prática será documentada futuramente.

Code Review (em breve)

Por que Esses Padrões?

Para o time:

  • Comunicação clara no histórico
  • Facilita onboarding de novos devs
  • Reduz erros em produção
  • Trabalho em paralelo sem conflitos

Para o projeto:

  • Histórico rastreável
  • Rollback seguro
  • Changelog automático (futuro)
  • Integração contínua confiável

Ferramentas

FerramentaUso
GitControle de versão local
GitLabRepositório remoto + CI/CD
CommitlintValidação de commits (em implementação)

Fluxo do Dia a Dia

bash
# 1. Criar branch
git checkout develop
git pull
git checkout -b feature/nova-funcionalidade

# 2. Desenvolver com commits padronizados
git add .
git commit -m "feat(crud): adiciona CRUD de equipamentos"

# 3. Push e abrir MR
git push origin feature/nova-funcionalidade
# Abrir MR no GitLab

# 4. Aguardar aprovação e merge

Próximos Passos

Se você é novo no time:

  1. Leia Conventional Commits (5 min)
  2. Entenda o Estratégia de Branches (10 min)
  3. Saiba como criar Merge Requests (10 min)
  4. Pratique no seu primeiro commit!

Se você já conhece Git:

Dúvidas Comuns

Posso fazer commit direto na develop?

Não. Sempre trabalhe em branches (feature/, fix/, etc).

Posso fazer merge local?

Não. Todo merge é via Merge Request no GitLab, mesmo para Maintainers.

E se meu commit não seguir o padrão?

CI/CD vai bloquear. Use git commit --amend para corrigir a mensagem antes do push.

Preciso de aprovação para todo MR?

Sim. 1 aprovação obrigatória de Maintainer ou Lead Técnico.

Quantos commits posso fazer na minha branch?

Quantos quiser! O importante é cada commit seguir o padrão Conventional Commits.

Posso fazer rebase antes do merge?

Sim! Inclusive é incentivado para manter histórico limpo. Mas sempre force push com cuidado.


Referências:

Documentação mantida pelo Time de Desenvolvimento 💪