Existe uma maneira de revisar o código de alguém antes de empurrar o Mercurial?

StackOverflow https://stackoverflow.com/questions/4899156

  •  28-10-2019
  •  | 
  •  

Pergunta

Eu gostaria de poder revisar o código de outros desenvolvedores antes de enviá-lo para o repositório central.Os desenvolvedores estão em locais remotos, então ir para suas mesas não é uma opção.

Atualmente, eles apenas fazem push e, se houver problemas, eles reverteriam.Mas essa não é uma boa abordagem, pois alguém pode puxar antes de ter a chance de reverter.

Foi útil?

Solução

O Mercurial é distribuído e, como tal, deve ser capaz de se adaptar a qualquer fluxo de trabalho.Tente designar alguém como gerente de integração ou use o ditador e tenentes fluxo de trabalho.

Outras dicas

Como sobre o repositório de revisão entre os desenvolvedores e o repositório principal?Só você empurra de lá para o principal.

Votei positivamente na resposta de kelloti, pois esta é apenas uma expansão dela, mas apenas usei camadas de repositórios.Faça com que as pessoas enviem seus conjuntos de alterações não revisados para um repositório central de revisão de necessidades e faça com que os revisores enviem os trabalhos revisados de lá para o repositório central-ish de need-QA e faça com que o pessoal de QA envie os repositórios centrais-ish de release candidate.p>

Com um sistema de controle de versão distribuído, você pode fazer uma pluralidade de repositórios centralizados com a mesma facilidade com que faz uma pluralidade de repositórios de desenvolvedor.

No meu último projeto, seguimos um modelo de desenvolvimento muito ramificado - cada tarefa tinha um branch nomeado com o número da tarefa.As revisões de código foram realizadas em relação ao branch nomeado.Queríamos explicitamente que eles fossem enviados para o repositório central e os desenvolvedores os removessem.

No entanto, nenhuma tarefa chamada branch foi mesclada com o branch de integração (em nosso caso, o padrão, mas poderia ser qualquer branch de recurso) até que fosse aprovado na revisão do código.

Muitos desenvolvedores inconstantes não gostam de usar branches de curta duração que permanecem no repositório, mas acho que torna mais fácil seguir o histórico, especialmente quando olhamos para o histórico de uma única mudança - você sabe dissoas alterações para uma tarefa específica estão no branch nomeado associado.

Talvez usar uma extensão shelve seja uma boa solução?Não estou muito familiarizado com o Mercurial, mas isso pode funcionar para você.

https://www.mercurial-scm.org/wiki/ShelveExtension

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top