Após mesclar um branch, você o exclui do repositório?
Porém, é uma boa prática ou não?
Normalmente crio muitos branches, já que não quero interromper minha versão atual e gostaria de excluí-los para manter as coisas em ordem.
No entanto, se você trabalha com Assembla ou GitHub, suas solicitações de mesclagem de branches antigos serão salvas no site, portanto, se você excluí-las, receberá um erro, pois não será possível buscá-las ...
Normalmente, como fazer isso?
git
branching-and-merging
tampe125
fonte
fonte
Merge branch fix-foo-bar
mensagens de commit. Tente egit log --grep="Merge branch"
, em seguida, lance suas próprias âncoras de interesse viagit checkout -b curious-change
. Além disso, nada é perdido ao deletar um branch - exceto o mero ponteiro "branchname → commithash" (que é o que um branch realmente é, não importa local ou remoto).Eu definitivamente limpo minhas filiais depois que elas são incorporadas.
Usamos o GitLab e mesclamos solicitações no trabalho, de modo que as informações históricas sobre ramos são armazenadas lá; Não preciso deles bagunçando minha lista de ramos e, quando olho para o fork de um colega de trabalho, idealmente gostaria apenas de ver os ramos de seu desenvolvimento ativo atual. Se estou tentando examinar algum código em seu branch, quero ser capaz de examinar apenas alguns branches atualmente ativos, e não todos os recursos ou correções em que já começaram a trabalhar.
O acima se aplica ao BitBucket e GitHub também.
A única razão que você pode ter para não deletar um branch pós-mesclagem é saber onde um determinado recurso terminou, mas os commits de mesclagem (e
git merge --no-ff
se você realmente quiser) tornam isso irrelevante.fonte
Apenas tome cuidado com
todas as referências de URLs de hiperlinks de suas ramificações EXCLUÍDAS, serão QUEBRADAS .
Por exemplo,
se você excluir
branch_feature_x
branch de seu repoO URL do hiperlink correspondente deste branch será quebrado
https://github.com/username/project/tree/branch_feature_x
fonte
Só para esclarecer, branch, do ponto de vista do git, é apenas um link para algum commit. Ao excluir o branch, você não excluirá os commits do git repo. Claro, independente commits serão limpos depois de algum tempo por meio do coletor de lixo git.
Para sua informação: normalmente estamos mesclando branches no master por meio da interface bitbucket. Lá você pode definir
delete feature branch after merge
bandeira.Se você precisa lidar com branches muito antigos, você poderia dar uma olhada em alguns utilitários, por exemplo este .
fonte