Nós topamos com esse problema exato recentemente. Nós realmente gostamos do fluxo do git, pois ele usa um bom nível de semântica (usando o mesmo nível que você usa na discussão em equipe: "Eu começarei o recurso A" mais do que "eu vou criar um branch, check-out"), enquanto git é um nível muito "de implementação" (que é bom e útil também, mas diferente).
O problema que temos é com git feature finish
, pois ele mescla o branch no develop, enquanto nós queremos que um pull request seja enviado e (isso é importante) mesclado pelo revisor , não o committer, para enfatizar a propriedade da equipe.
Nossa solução atual:
- Alguém usa o fluxo do git para criar um ramo de recurso
- Quando terminar, ele cria uma solicitação pull (usando o github)
- A revisão ocorre, com potenciais confirmações adicionais
- A solicitação pull é mesclada usando o GitHub pelo revisor .
- Não há conclusão do recurso de fluxo do git (como a filial já está mesclada)
Isso é consistente com nossa prática, com a desvantagem de precisar excluir a ramificação por nós mesmos (já que não concluímos o fluxo). Nosso próximo passo provavelmente será reimplementar algumas partes do fluxo git (como é principalmente sobre encadear comandos git) para levar isso em conta (tendo a parte de "limpeza" do acabamento, sem a mesclagem).