É difícil saber com certeza porque a mesclagem é o padrão sem ouvir a pessoa que tomou essa decisão.
Aqui está uma teoria ...
O Git não pode presumir que está tudo bem - solapar cada puxão. Ouça como isso soa. "Rebase cada puxada." soa errado se você usar pull requests ou similar. Você rebase em um pedido pull?
Em uma equipe que não está apenas usando o Git para controle centralizado de fontes ...
-
Você pode extrair do upstream e do downstream. Algumas pessoas fazem muito do downstream, dos contribuidores, etc.
-
Você pode trabalhar em recursos em estreita colaboração com outros desenvolvedores, aproveitando-os ou de uma ramificação de tópico compartilhada e ainda ocasionalmente sendo atualizada a partir do upstream. Se você sempre rebase, você acaba mudando o histórico compartilhado, sem mencionar os divertidos ciclos de conflito.
O Git foi projetado para uma equipe grande e altamente distribuída onde todos não puxam nem pressionam para um único repositório central. Então, o padrão faz sentido.
- Os desenvolvedores que não sabem quando está ok para fazer o rebase serão mesclados por padrão.
- Os desenvolvedores podem fazer o rebase quando quiserem.
- Os commiters que fazem muitos pulls e têm muita influência obtêm o padrão que melhor lhes convier.
Para evidências de intenções, aqui está um link para um e-mail bem conhecido de Linus Torvalds com suas opiniões sobre quando eles não devem se rebase. Dri-devel git pull email
Se você seguir todo o tópico, verá que um desenvolvedor está puxando de outro desenvolvedor e Linus está puxando de ambos. Ele deixa sua opinião bem clara. Como ele provavelmente decidiu os padrões do Git, isso pode explicar o porquê.
Muitas pessoas agora usam o Git de forma centralizada, onde todos em um pequeno grupo puxam apenas de um repositório central a montante e vão para o mesmo controle remoto. Esse cenário evita algumas situações em que um rebase não é bom, mas geralmente não as elimina.
Sugestão: Não faça uma política de alteração do padrão. Toda vez que você coloca o Git junto com um grande grupo de desenvolvedores, alguns dos desenvolvedores não entenderão tudo isso profundamente (inclusive eu). Eles vão ao Google, então, recebem conselhos sobre livros de culinária e depois se perguntam por que algumas coisas não funcionam, por exemplo. Por que git checkout --ours <path>
obtém a versão incorreta do arquivo? Você sempre pode revisar seu ambiente local, criar apelidos, etc. para se adequar ao seu gosto.