Temos alguém (vamos chamá-lo de Ted) que é responsável por testar novos recursos e correções de bugs.
Estamos usando o Git e o GitHub . masterdeve ser / é sempre implantável e developmenté onde confirmamos / mesclamos novos recursos ou correções de bugs, mas somente depois que eles foram testados por Ted.
O projeto está em PHP.
Eu gostaria que o processo de teste fosse assim:
- Um desenvolvedor quer trabalhar em um novo recurso (digamos que o recurso / bug # 123 como Ted documentado no issue tracker), então ele puxa
origin/developmentparadevelopmentem seu repositório local e cria um novo ramo (digamosissue-123) de lá. - Uma vez satisfeito com seu trabalho, ele compromete e empurra seu novo ramo para
origin. - Ted se conecta
test.ourproject.com/choose-branche vê uma lista dos ramosorigine escolhe ligarissue-123(deve ser possível através da página da web). Em seguidatest.ourproject.com, ele testa o aplicativo da Web (ele é realmente impiedoso) e depois de algumas idas e vindas com o desenvolvedor, ele está feliz com o recurso. - Ted diz o desenvolvedor que ele pode mesclar
issue-123emdevelopmentonorigin. - Enxague e repita.
Para a terceira etapa, eu poderia hackear algo que faz o trabalho (mostrando e alternando ramificações de uma página específica), mas acho que o que descrevi é um padrão muito comum.
Portanto, minha pergunta é: esse é um fluxo de trabalho bom / sustentável / sustentável para ramificação? Você pode fazer backup de sua resposta citando alguns exemplos de outros projetos após esse fluxo de trabalho?
issue-123se refere ao bug / recurso # 123, pois Ted documenta cada bug / novo recurso em nosso rastreador de problemas.