Questão nº 19

Questão de Desenvolvimento de Sistemas · FGV SEFAZ-MG 2022 - Tarde (nº 19)

FGV2022Auditor Fiscal - Tecnologia da InformaçãoDesenvolvimento de Sistemas
Gabarito: Aver comentário ↓

O comando git que deve ser usado para descartar commits que foram feitos apenas localmente e traz o repositório local para o estado do último push do repositório remoto é o

Resposta comentada

Gabarito Alternativa A

Para descartar alterações de commits que ainda não foram compartilhados (apenas locais) e alinhar seu histórico com o do repositório remoto, você precisa reescrever o histórico local.

(A) Correta: O comando `git reset` é usado para mover o ponteiro `HEAD` (que indica seu commit atual) para um commit anterior. Ao usá-lo com a opção `--hard` e especificando a referência do ramo remoto (ex: `git reset --hard origin/main`), ele descarta todos os commits locais que estão à frente do commit remoto e também limpa o diretório de trabalho e a área de staging, fazendo com que seu repositório local fique exatamente igual ao estado do último push do repositório remoto.
(B) Incorreta: O comando `git revert` cria um novo commit que desfaz as alterações de um commit anterior. Ele não descarta o histórico, mas sim adiciona um novo registro que anula o efeito de um commit existente. É ideal para desfazer alterações que já foram publicadas em um repositório remoto compartilhado, pois mantém o histórico intacto e linear. Armadilha: Ambos "desfazem" algo, mas `revert` cria um novo commit para desfazer histórico público, enquanto `reset` reescreve/descarta histórico privado (local).
(C) Incorreta: O comando `git clean` é utilizado para remover arquivos não rastreados (que não estão no controle de versão) do diretório de trabalho. Ele não manipula commits ou o histórico do repositório.
(D) Incorreta: O comando `git stash` é usado para salvar temporariamente as alterações que você fez no seu diretório de trabalho e área de staging (trabalho em andamento) sem precisar fazer um commit. Ele não descarta commits do histórico, apenas guarda o estado atual para que você possa mudar de branch ou fazer outra coisa.
(E) Incorreta: `git discard` não é um comando Git padrão.

Fonte: FGV SEFAZ-MG 2022 - Tarde Auditor Fiscal - Tecnologia da Informação (Caderno Tipo 1). Reproduzida para fins de estudo.

Continue estudando

Estudar é izi

Pratique milhares de questões como esta, de graça, com explicação e gamificação no Quizinho.

Estudar de graça no Quizinho