Junior — Middle
Que abordagens de gestão de branches em sistemas de controlo de versões conheces?
sobes.tech IA
Resposta da IA
Nos sistemas de controlo de versões, como o Git, existem diferentes abordagens para gerir ramificações:
- Feature Branching (ramificações de funcionalidades): para cada nova funcionalidade, é criada uma ramificação separada, o que permite isolar o desenvolvimento e simplificar a integração.
- Git Flow: uma abordagem estruturada com as principais ramificações
masteredevelop, bem como ramificações para lançamentos, correções e novas funcionalidades. - Desenvolvimento baseado em trunk: os desenvolvedores frequentemente integram alterações diretamente na ramificação principal (trunk), usando ramificações de curta duração.
- Workflow de fork (Forking Workflow): cada desenvolvedor trabalha no seu próprio fork do repositório, e depois as alterações são fundidas através de pull requests.
A escolha da abordagem depende da equipa e do projeto. Por exemplo, para projetos pequenos, o feature branching costuma ser suficiente, enquanto para grandes projetos, o Git Flow.
Exemplo de criação e troca para uma nova ramificação no Git:
git checkout -b feature/nova-funcionalidade
// trabalho na funcionalidade
// depois fundir na ramificação principal