Pergunta

Em nossa equipe, geralmente estamos empurrando todas as tarefas para filiais separadas e, depois desse gerente de lançamento, revise essas filiais e mesclá-las na filial 'Master'

Às vezes, os membros da equipe esquecem de mesclar suas filiais com a Master Branch (antes de empurrar) - então o que estou tentando fazer é - emitir uma mensagem "Por favor, mesclar com mestre" depois que o usuário empurre - presumo que preciso verificar algo post- receber gancho no controle remoto .. existem alguns exemplos? .. ou o que eu deveria fazer basicamente?

ATUALIZAÇÃO: PRINCIPAIS RAZÃO PARA ESTE - MINIMIZE Número de conflitos em potencial (já que o Comitter (não o Manager de Liberação) os resolverá)

Foi útil?

Solução

Se git cherry new-branch master Tem algum resultado, então alguém não se referia antes de pressionar.

Outras dicas

Suponho que por "mesclar com mestre", você realmente quer dizer Rebase no topo do mestre.

Todo desenvolvedor deve:

  • Puxe Mestre
  • Refase seu ramo em cima do mestre antes de empurrá -lo

Para que o gerente de lançamento tenha uma fusão rápida, apenas depois de revisar a filial.
Se algum tipo de conflito aparecer, o mesmo gerente de lançamento deve notificar o desenvolvedor, pedindo que ele (novamente) puxe o mestre e faça uma rebase.
Dessa forma, apenas o desenvolvedor é responsável por resolver conflitos, não o gerente de lançamento.

Ver Rebase vs. Merge


Para um processo automático, eu iria com um centro gancho de atualização, que tentaria realizar uma mesclagem para dominar e verificar se "Fast-Avanward" faz parte da saída do comando. Caso contrário, o gancho falhará com um git send-email.
Não tenho exemplo desse script no momento.

Não há realmente uma boa maneira de fazer isso. Existem algumas complicações, a mais óbvia é que sua operação de mestre de mestre / mestre não é atômica. Ou seja, alguém pode empurrar algo intermediário. Eu prefiro sugerir que você tenha uma olhada, por exemplo Gitoroso O que facilita muito o trabalho do gerente de lançamento. Ele pode ver facilmente o que o compromisso inclui e pode aceitar/rejeitar os compromissos com facilidade.

Mas você pode encontrar git-wtf útil. Ele mostra como comparar o repositório local com o controle remoto, se você ainda insistir em experimentar uma solução automatizada.

Você realmente não quer manter as mesclas cruzadas. Os ramos do tópico devem ser mesclados no mestre, ou os galhos devem permanecer separados, sendo mesclados a partir de mestre.

Talvez o que você esteja procurando seja que um ramo antes de ser pressionado seja renegado ao mestre, para que o número de conflitos em potencial seja minimizado, já que o colaborador já resolveu a maioria deles.

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