← Questões de Engenharia de Software

Engenharia de Software · FGV · 2023

Questão comentada de Engenharia de Software

Marcos trabalha em uma equipe de desenvolvimento de software que utiliza o Git como plataforma de gestão de configuração. Um membro da equipe, no entanto, fez um commit que introduziu, de maneira não intencional, um código com comportamento errático. Assinale a opção que indica o comando do Git que Marcos utilizou para fazer uma pesquisa binária para descobrir qual commit, no histórico do seu projeto, introduziu esse problema.

Gabarito: A

Quando um erro aparece depois de um commit e você quer descobrir em qual ponto do histórico ele nasceu, o Git tem uma ferramenta perfeita para isso: o bisect. A ideia é simples e elegante, quase um "detetive digital": você marca uma versão como boa e outra como ruim, e o Git vai testando o meio do caminho até achar o commit culpado. Isso é uma busca binária aplicada ao histórico do projeto. Esse recurso é muito usado quando o defeito não é fácil de perceber de cara, porque o problema pode ter surgido em um commit antigo e só ter sido notado depois. Em vez de revisar tudo na mão, você deixa o Git reduzir o universo de suspeitos de forma rápida e inteligente. É economia de tempo e de paciência, dois recursos raríssimos em desenvolvimento. Por isso o gabarito é a letra A. O comando git bisect serve exatamente para localizar o commit que introduziu um comportamento errado, comparando versões boas e ruins até encontrar o ponto exato da falha. A lógica é a mesma da pesquisa binária: cada teste corta pela metade o caminho restante. Os outros comandos da questão pertencem a tarefas diferentes, como buscar alterações em um repositório remoto, reorganizar commits ou localizar arquivos, mas nenhum deles faz essa investigação binária no histórico para descobrir a origem de um bug.

Continue treinando

Questões relacionadas