← Questões de Engenharia de Software

Engenharia de Software · UFRPE · 2022

Questão comentada de Engenharia de Software

Imagine que seu software está armazenado no git e surge a necessidade de efetuar um merge normal de duas branches de sua aplicação. Qual o tipo de estratégia de mesclagem que o git irá utilizar para efetuar tal procedimento?

Gabarito: E

Quando voce faz um merge normal de duas branches no Git, o sistema precisa encontrar a melhor forma de combinar os históricos sem perder informação. Para isso, o Git usa por padrão a estratégia de merge chamada "recursiva", que é a mais comum e inteligente para unir dois ramos que já tiveram um ponto de ancestralidade em comum. Ela tenta localizar a base comum entre as branches e resolver as diferenças de forma automática, sempre que possivel. Na pratica, isso significa que o Git olha para os dois lados da história e tenta reconstruir o caminho de onde eles vieram. Se houver conflitos, ele avisa para voce resolver manualmente. Se tudo estiver limpo, ele faz a fusão normalmente, criando o commit de merge quando necessario. A banca acertou em cheio ao cobrar isso de forma direta: para merge normal entre branches, a estratégia padrão do Git é a recursiva. Essa é a resposta clássica em documentação e uso prático do Git, especialmente quando há um ancestral comum entre os ramos. As outras opções parecem nomes técnicos, mas nao correspondem às estratégias usuais de merge do Git nesse contexto. Aqui, a dica é simples: quando aparecer "merge normal" em prova, pense no comportamento padrão do Git para fusão de branches com histórico compartilhado.

Continue treinando

Questões relacionadas