Imagem de fundo

Considere o seguinte histórico de commits na branch...

Considere o seguinte histórico de commits na branch feature:


A — B — C — D (feature)


O desenvolvedor deseja consolidar os commits B, C e D em um único commit descritivo, mantendo o commit A intacto. Para isso, ele executa:


Imagem associada para resolução da questão

E no editor interativo, altera as linhas para:

Imagem associada para resolução da questão


Após salvar e editar a mensagem final, ele conclui o rebase. Diante do exposto, assinale a alternativa CORRETA.


A

O rebase interativo cria um novo commit contendo as alterações combinadas de B, C e D, com um novo hash, enquanto o commit A permanece inalterado e os commits originais B, C e D deixam de existir no histórico da branch.


B

O rebase interativo cria um novo commit contendo as alterações combinadas de B, C e D, com um novo hash para o commit A e os commits originais B, C e D deixam de existir no histórico da branch.


C

O rebase interativo aplica os commits B, C e D sobre A sem alterar seus hashes, apenas reordenando-os, uma vez que o uso de squash afeta apenas a mensagem de commit, não o conteúdo.


D

O rebase interativo substitui o commit A por um novo commit contendo as alterações de B, C e D, mantendo os hashes originais e criando um histórico linear com quatro commits.