Na página de manual do git-merge, há várias estratégias de mesclagem que você pode usar.
resolver - Isso pode resolver apenas duas cabeças (ou seja, a ramificação atual e outra ramificada da qual você retirou) usando o algoritmo de mesclagem de 3 vias. Ele tenta detectar cuidadosamente ambiguidades cruzadas de mesclagem e é considerado geralmente seguro e rápido.
recursivo - Isso pode resolver apenas duas cabeças usando o algoritmo de mesclagem de 3 vias. Quando há mais de um ancestral comum que pode ser usado para mesclagem de 3 vias, ele cria uma árvore mesclada dos ancestrais comuns e a usa como a árvore de referência para a mesclagem de 3 vias. Foi relatado que isso resulta em menos conflitos de mesclagem sem causar fusões incorretas por testes feitos em confirmações de mesclagem reais retiradas do histórico de desenvolvimento do kernel Linux 2.6. Além disso, isso pode detectar e manipular fusões envolvendo renomeações. Essa é a estratégia de mesclagem padrão ao extrair ou mesclar uma ramificação.
polvo - Isso resolve mais de dois casos, mas se recusa a fazer mesclagens complexas que precisam de resolução manual. Destina-se principalmente a ser usado para agrupar cabeças de ramificação de tópicos. Essa é a estratégia de mesclagem padrão ao extrair ou mesclar mais de uma ramificação.
our - Isso resolve qualquer número de cabeças, mas o resultado da mesclagem é sempre a cabeça de ramificação atual. Ele deve ser usado para substituir o histórico antigo de desenvolvimento de ramificações laterais.
subárvore - Esta é uma estratégia recursiva modificada. Ao mesclar as árvores A e B, se B corresponder a uma subárvore de A, B será ajustado primeiro para corresponder à estrutura de árvore de A, em vez de ler as árvores no mesmo nível. Esse ajuste também é feito na árvore ancestral comum.
Quando devo especificar algo diferente do padrão? Quais são os melhores cenários?