Questão de Arquitetura de Software — Conceitos Básicos em Arquitetura de Software — FGV 2023
Arquitetura de Software›Conceitos Básicos em Arquitetura de Software
Código
fg061592
Banca
FGV
Órgão
Câmara dos Deputados
Ano
2023
Nível
Superior
Cargo
Analista Legislativo - Informática Legislativa - Tarde
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.
Abisect.
Bfetch.
Cfind.
Dlocate.
Erebase.
Revelar gabarito e comentário▾
GabaritoA — bisect.
Comentário gerado por IA. É um apoio ao estudo, ancorado em fontes, mas pode conter imprecisões — confira sempre na fonte oficial (lei, súmula, edital e gabarito da banca). Encontrou um erro? Use “Reportar”.
Git: Comando para Pesquisa Binária no Histórico
Gabarito: letra A. O comando git bisect é o recurso do Git que realiza uma busca binária no histórico de commits para localizar exatamente qual commit introduziu um defeito, utilizando sucessivas marcações de "bom" e "ruim" para reduzir o intervalo de busca.
A questão aborda um comando específico do Git para depuração. O git bisect é a ferramenta padrão para essa finalidade, amplamente utilizada em equipes de desenvolvimento. As demais opções são comandos válidos, mas com propósitos totalmente diferentes.
Alternativa A — ✅ Correta ⟵ GABARITO
O comando git bisect inicia uma busca binária. O usuário marca um commit como "bom" (sem o bug) e outro como "ruim" (com o bug). O Git então seleciona um commit intermediário; o usuário testa e marca novamente. O processo se repete até encontrar o commit exato que causou o problema. É a ferramenta ideal para a situação descrita.
Alternativa B — ❌ Incorreta
git fetch baixa objetos e referências de um repositório remoto, mas não realiza qualquer busca no histórico local ou análise de bugs. Seu propósito é sincronizar dados com o repositório remoto.
Alternativa C — ❌ Incorreta
git find não é um comando nativo do Git. Existem comandos como git log, git grep ou ferramentas externas como git bisect para localizar mudanças, mas find não faz parte do Git.
Alternativa D — ❌ Incorreta
Assim como find, locate não é um comando do Git. É um comando do sistema operacional para localizar arquivos no disco, sem relação com o histórico de commits.
Alternativa E — ❌ Incorreta
git rebase reorganiza commits, aplicando-os sobre uma nova base. Pode ser usado para limpar o histórico, mas não ajuda a descobrir qual commit introduziu um bug; pelo contrário, pode dificultar a rastreabilidade.
NÃO CAIA NESSA!
A banca tenta confundir com comandos que têm nomes sugestivos, como find ou rebase. Lembre-se: a ferramenta de pesquisa binária no Git se chama exclusivamente bisect. Memorize essa associação.