Sobes.tech
Junior — Middle

Pode descrever como gerenciava os branches e os lançamentos ao usar o processo Git no seu emprego anterior?

sobes.tech IA

Resposta da IA

Na nossa posição anterior, usávamos Git com o modelo de ramificação Git Flow, que inclui os seguintes ramos principais:

  • master/main: contém código estável, pronto para lançamento.
  • develop: ramo de integração para o desenvolvimento atual.
  • feature/*: para desenvolver novas funcionalidades.
  • release/*: para preparar o lançamento, corrigir bugs e realizar testes finais.
  • hotfix/*: para correções urgentes em produção.

O processo era o seguinte:

  1. Para cada nova tarefa, criava-se um ramo feature a partir do develop.
  2. Após concluir e testar a feature, ela era mesclada de volta ao develop por meio de uma solicitação de pull com revisão de código.
  3. Quando o conjunto de funcionalidades estava pronto para o lançamento, criava-se um ramo release a partir do develop, onde eram realizados testes e correções de bugs.
  4. Após um teste bem-sucedido, o ramo release era mesclado em master e develop, e uma tag com o número da versão era criada.
  5. Em caso de bugs críticos em produção, criava-se um ramo hotfix a partir do master, e as correções eram mescladas de volta em master e develop.

Essa abordagem garantia a estabilidade dos lançamentos e facilitava o desenvolvimento paralelo.