Questão de Engenharia de Software — Gerência de Configuração — FGV 2023
- Código
- fg072420
- Banca
- FGV
- Órgão
- TJ-RN
- Ano
- 2023
- Nível
- Superior
- Cargo
- Analista Judiciário - Tecnologia de Informação – Análise de Sistemas
- Adiff;
- Bfetch;
- Cstash;
- Dreset;
- Erebase.
GabaritoC — stash;
Gabarito: letra C. O comando git stash é utilizado para arquivar localmente as alterações não commitadas no diretório de trabalho, permitindo que o desenvolvedor mude de branch sem perder as modificações em andamento. Esse é exatamente o cenário descrito no enunciado.
O Git oferece diversos comandos para o dia a dia. A questão testa o conhecimento da finalidade específica de cada um. A descrição — "arquiva localmente as alterações realizadas que não foram commitadas" — é a definição canônica do git stash.
git diff exibe as diferenças entre arquivos, branches, commits, etc. Não arquiva alterações.
git fetch baixa objetos e referências de um repositório remoto para o local, sem mesclar. Não lida com alterações não commitadas.
git stash salva temporariamente as mudanças não commitadas (modificações no working directory e staging area) em uma pilha local, permitindo que o diretório de trabalho fique limpo para trocar de branch. Depois, é possível restaurá-las com git stash pop ou git stash apply.
git reset desfaz commits ou alterações no staging area/working directory, mas não serve para arquivar mudanças para uso posterior.
git rebase reaplica commits de uma branch sobre outra, reorganizando o histórico. Não lida com alterações não commitadas.
Lembre-se: stash = "esconderijo". Se você precisa trocar de branch mas tem trabalho sujo, git stash é o comando. Os outros comandos (diff, fetch, reset, rebase) têm propósitos totalmente diferentes.
Gabarito: letra C.
Link permanente: /questoes/fg072420