Nos deparamos com esse problema exato recentemente. Nós realmente gostamos do fluxo git, pois ele usa um bom nível de semântica (usando o mesmo nível usado na discussão em equipe: "Vou iniciar o recurso A" mais do que "vou criar um ramo, fazer checkout"), enquanto O git é um nível muito "de implementação" (que também é bom e útil, mas diferente).
O problema que temos é git feature finish
o de mesclar a ramificação ao desenvolvimento, enquanto queremos que uma solicitação de recebimento seja enviada e (isso é importante) mesclada pelo revisor , e não pelo responsável, para enfatizar a propriedade da equipe.
Nossa solução atual:
- Alguém usa o fluxo git para criar uma ramificação de recurso
- Quando terminar, ele cria uma solicitação de recebimento (usando o github)
- A revisão ocorre, com possíveis confirmações adicionais
- A solicitação de recebimento é mesclada usando o GitHub pelo revisor .
- Não há conclusão do recurso de fluxo git (como a ramificação já está mesclada)
Isso é consistente com a nossa prática, com a desvantagem de exigir a exclusão do ramo por conta própria (como não damos acabamento ao fluxo). Nosso próximo passo provavelmente será reimplementar algumas partes do fluxo git (como se trata principalmente de encadear comandos git) para levar isso em consideração (tendo a parte "limpeza" do acabamento, sem a mesclagem).