Pergunta

Gostaria de receber algum feedback sobre meu fluxo de trabalho git porque este é meu primeiro uso e, apesar de ler vários artigos e perguntas sobre Stack Overflow, não tenho certeza se meu processo está correto.Este é meu fluxo de trabalho atual (observe que estou usando o aplicativo Github para Windows para todas as minhas interações git):

  1. Decida qual é o próximo recurso que irei implementar.
  2. Crie uma ramificação com um nome descritivo adequado para o recurso.Faço isso clicando no botão de ramificação no Github para Windows e digitando um novo nome.
  3. Escreva algum código.
  4. Confirme essas alterações em meu novo branch.
  5. Escreva mais um pouco de código.
  6. Confirme essas alterações em meu novo branch.
  7. Terminei de implementar o recurso, então quero mesclar minhas alterações de volta ao branch master.Então clico no botão 'gerenciar' abaixo do título do branch.
  8. Mesclar o novo branch no branch master.
  9. Exclua a nova ramificação.

Estou muito feliz com o processo até a etapa 7, quando estou um pouco confuso.Acho que minha confusão reside no fato de estar tentando usar o aplicativo Github para Windows em vez de usar a linha de comando.O aplicativo parece facilitar as coisas, mas há uma certa desconexão no meu entendimento entre alguns dos comandos/instruções que vejo mencionados e as ações que você executaria no aplicativo.

Deixe-me fazer algumas perguntas específicas:

  1. Meu fluxo de trabalho está realmente correto?Se não, o que há de errado com isso e como posso melhorá-lo?
  2. Devo "publicar" minhas alterações no novo branch?Meu entendimento é que isso equivale a fazer git push na linha de comando.Isso é verdade?Em caso afirmativo, acho que só gostaria de fazer isso quando terminar de implementar o recurso ou quando ele estiver em um estado decente.
  3. Devo excluir o branch depois de mesclá-lo no branch master ou ele deve ser deixado para sempre?
  4. Preciso publicar o branch master quando concluir a mesclagem ou isso está implícito?
  5. Às vezes não consigo realizar a mesclagem e recebo esta mensagem de erro:

    Não foi possível mesclar

    Falha ao mesclar 'teste' em 'mestre'.Pode ser necessário abrir um shell e depurar o estado deste repositório.

Quando isso ocorreu antes, consegui mudar para o branch master e mesclar o novo branch no branch master, mas isso não funciona mais.Não importa em qual ramo eu esteja, não posso mesclar os dois ramos.Ambos estão sincronizados e publiquei todas as alterações do meu branch de teste.O que devo digitar no shell para descobrir por que não consigo mesclar as ramificações?

Para referência, estes são os principais links que motivaram meu processo:

  1. Scott Chacon sobre o fluxo de trabalho no Gitub
  2. Fluxo de trabalho Git para um único desenvolvedor em um repositório local
  3. Fluxo de trabalho Git para um único usuário
Foi útil?

Solução

O que você está descrevendo parece um fluxo de trabalho de ramificação comum que funciona muito bem mesmo para vários desenvolvedores na mesma base de código.Está praticamente completamente coberto por fluxo git que é uma extensão da linha de comando do git para automatizar certas etapas.Vale a pena conferir.

Não sou um grande fã de ferramentas de UI para git.Estou usando a linha de comando na maior parte do tempo.Portanto, não tenho experiência com GitHub para Windows.Mas aposto que seus problemas ocorrem porque suas mesclagens não são mais avanços rápidos.Isso exigiria uma etapa de mesclagem manual que (afaik) não é coberta pela ferramenta.

Não há nenhuma razão forte para manter as ramificações depois de mesclá-las ao seu upstream.Mas uma delas é rastrear quais commits foram inseridos em um determinado recurso.Eu sugeriria publicar as filiais se você decidir mantê-las.Você não depende do código existente em sua máquina local.Manter as ramificações não torna seu repositório muito maior, mas polui a visão.Na maioria das vezes, os commits estão presentes de qualquer maneira na sua ramificação upstream.

Você terá que publicar (enviar) seu branch master após a fusão.

Para se familiarizar com a ferramenta de linha de comando git, sugiro começar com o Introdução ao Git e GitHub do pessoal do GitHub e siga as referências dos links para obter mais detalhes.

espero que ajude

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