Iniciaremos um novo projeto este mês. O projeto será de 1 ano e a implantação da produção ocorrerá apenas no final do projeto.
Faremos o desenvolvimento iterativo (1 mês por iteração); portanto, deixaremos os recursos para o ambiente de teste no final de cada iteração para o teste de controle de qualidade.
Nossa estratégia de ramificação é:
- Tronco - Todo o desenvolvimento acontecerá no tronco.
- Ramificação de recursos - As ramificações do tronco serão criadas conforme a necessidade para o desenvolvimento de grandes recursos que poderiam ser interrompidos se realizados no tronco
- Ramificações de liberação do controle de qualidade - No final de cada iteração, uma ramificação do tronco será criada. Essa ramificação (que inclui um número de versão) será lançada no ambiente de teste. Todos os erros críticos e de bloqueio encontrados nesta versão serão corrigidos nesta ramificação e as correções precisarão ser mescladas ao tronco. Bugs não críticos / triviais não serão tratados na ramificação de liberação do controle de qualidade e serão corrigidos apenas no tronco, pois a ramificação de liberação do controle de qualidade será descartada após o final da próxima iteração, em que uma nova ramificação de liberação será criada fora do tronco.
- Ramo de produção - este será o último ramo de liberação do controle de qualidade no final do projeto. Isso será marcado e todas as correções de erros de produção estarão neste ramo e mescladas ao tronco.
Essa é uma estratégia de ramificação correta? Falta considerar algo mais?
Estamos usando o SVN.