O que é um ramo de tópico git? É diferente de um ramo comum de alguma maneira? Existem ramos que não são tópicos?
fonte
O que é um ramo de tópico git? É diferente de um ramo comum de alguma maneira? Existem ramos que não são tópicos?
As ramificações de tópicos geralmente são ramificações leves que você cria localmente e que têm um nome que é significativo para você . Eles são onde você pode trabalhar para uma correção ou recurso de bug (também chamado de ramificação de recurso) que deve levar algum tempo para ser concluído.
Outro tipo de ramificação é a "ramificação remota" ou "ramificação de rastreamento remoto". Esse tipo de ramificação segue o desenvolvimento do trabalho de outra pessoa e é armazenado em seu próprio repositório. Você atualiza periodicamente este ramo (usando git fetch
) para rastrear o que está acontecendo em outro lugar. Quando estiver pronto para acompanhar as alterações de todos os outros, você usaria git pull
para buscar e mesclar.
Eu também vi outro tipo de ramificação, que é essencialmente uma árvore de arquivos completamente separada no mesmo repositório. Por exemplo, o próprio repositório Git contém cabeças denominadas man e html que contêm conteúdo totalmente diferente da ramificação principal . Não sei como esses tipos de ramos são geralmente chamados.
Não é um termo técnico; apenas se refere a um ramo que foi criado para implementar um recurso específico ou corrigir um bug. O "tópico" é a razão da criação da ramificação, essencialmente.
fonte
https://github.com/dchelimsky/rspec/wiki/Topic-Branches explica isso bem:
Este exemplo também fornece exemplos. O que realmente me fez pensar: provavelmente é isso que a maioria das lojas já faz. Todos os projetos ágeis com que já participei fazem. Eu votei em "Não é um termo técnico" porque sinto que isso atinge a unha na cabeça.
fonte
Provavelmente, isso é certo para você, mas é sobre você e o projeto em que está pensando; não é determinado pelo Git.
A maioria dos sistemas de controle de versão (principalmente os centralizados) prescreve ou impõe um fluxo de trabalho específico, incluindo o que faz sentido usar uma ramificação. O Git (e até certo ponto a maioria dos VCSs distribuídos) considera que o fluxo de trabalho, para quais ramificações são usadas, quando confirmar, para que diferentes repositórios são usados etc. são todos escolhidos pelos usuários e acordos entre os usuários (políticas). Portanto, o Git não os aplica tecnicamente.
Essa é uma das coisas que dificultaram o aprendizado do Git. Oliver Steele explicou isso da visão do usuário, escrevendo sobre as políticas de confirmação .
fonte