Fluxo de trabalho do Gitlab, forçando a revisão de código ou a solicitação de mesclagem na ramificação


18

Estou trabalhando para implementar o Gitlab na minha empresa com uma estratégia de fluxo de trabalho. Minha ideia é que os desenvolvedores tenham acesso aos repositórios, mas, sempre que tentarem confirmar, seu código deverá ser revisado.

Eu sei que posso fazê-los criar uma ramificação antes de confirmar e, em seguida, criar uma solicitação de mesclagem depois que ela é enviada para o repositório. Ainda não estou claro sobre certas coisas ... A idéia de que confiamos nas pessoas para criar uma ramificação e, em seguida, uma solicitação de mesclagem parece defeituosa, existe uma solução que força algum tipo de política que a ramificação mestre pode manter-se limpa, a menos que " admin "aprova o código que está prestes a mesclar nele. Eu li o "fluxo de trabalho da equipe do github", mas ele não parece oferecer uma solução viável. Qualquer conselho sobre o processo ou suas próprias práticas recomendadas é apreciado. Obrigado!


1
"The idea that we rely on people to create a branch and then a merge request seems faulty"Parece-me que você tem um problema maior do que a falta de recursos em um sistema de controle de versão. Se é apenas uma questão de gastar o tempo extra criando uma filial, dê uma olhada no Atlassian Stash e sua integração com o Jira.
toniedzwiedz

5
Graças Tom, a minha ideia é através da aplicação de uma política padrão, estou eliminando espaço para erro
Mike

2
Considere esta entrada de blog de gitlabhq about.gitlab.com/2014/09/29/gitlab-flow
spuder

1
Por favor, preste atenção a este: Google I / O 2009 - O mito do gênio programador
borisdiakur

Você poderia tê-los usar seus próprios garfos ....
Wildcard

Respostas:


14

Comecei a trabalhar com o gitlab, lendo a seção HELP fornece um layout de fluxo de trabalho. Neste ponto, essa parece ser a melhor solução para minha pergunta. Se alguém tiver experiência com esse fluxo de trabalho ou conselho, adicione outras informações.

Na seção AJUDA:

Fluxo de trabalho

  1. Projeto clone
    git clone git@example.com:project-name.git
  2. Crie ramificação com seu recurso
    git checkout -b $feature_name
  3. Escreva código. Confirmar alterações
    git commit -am "My feature is ready"
  4. Envie sua filial para o GitLab
    git push origin $feature_name
  5. Revise seu código na página de confirmações
  6. Crie uma solicitação de mesclagem
  7. O líder da sua equipe revisará o código e o mesclará à ramificação principal

Na seção de confirmações do seu repositório, você pode proteger as ramificações, o que força os desenvolvedores a seguir o processo acima, criando uma ramificação e enviando uma solicitação de mesclagem.

Captura de tela - Protegendo um ramo


2
Existe alguma maneira de impor esse fluxo de trabalho (por exemplo, usando ramificação protegida), mas permitir que qualquer responsável (não apenas o líder da equipe com privilégios de mestre / administrador) mescle a solicitação?
Adam

Eu apenas tentei atribuir uma solicitação de mesclagem a alguém sem privilégios de mestre e elas recebem a seguinte mensagem na solicitação de mesclagem: Isso não pode ser mesclado automaticamente, mesmo que possa ser mesclado, você não tem permissão para fazer isso. Então, não parece que eles seriam capazes.
Mike

Obrigado. Vou tentar o Review Board, o Phabricator ou o Gerrit. Você tem alguma experiência com algum deles?
Adam

Não, desculpe, eu não tentei nenhum desses serviços. Poste uma resposta se tiver êxito.
1755 Mike

Claro, a menos que eu esqueça. BTW, eu adicionei Barkeep à minha lista :)
Adam
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.