← Questões de Engenharia de Software

Engenharia de Software · FGV · 2023

Questão comentada de Engenharia de Software

A desenvolvedora Amélia está trabalhando no projeto AppBravo. O controle de versões do código-fonte do AppBravo é feito pelo Git. Logo após realizar algumas modificações no branch um do código-fonte do AppBravo, Amélia precisou alterar a cópia de trabalho para o branch dois. Para não perder o progresso feito no branch um, que não estava pronto para ser commitado, Amélia utilizou o comando do Git que arquiva localmente as alterações realizadas que não foram commitadas. Portanto, Amélia utilizou o comando do Git:

Gabarito: C

No Git, cada comando tem uma função bem específica, e a banca gosta de trocar nomes parecidos para ver se voce está atento. Quando voce está com alterações locais em andamento e precisa mudar de branch sem perder esse trabalho ainda incompleto, a solução clássica é guardar temporariamente essas mudanças em uma espécie de "gaveta" do Git. Essa gaveta é o stash, que arquiva as alterações não commitadas na cópia de trabalho e deixa o repositório limpo para voce trocar de branch. Isso é diferente de commit, porque o commit registra uma versão definitiva no histórico. O stash, por sua vez, é provisório: ele salva o que foi alterado localmente para voce retomar depois. Em termos práticos, é exatamente o que a questão descreve: Amélia não queria perder o que fez no branch um, mas precisava ir para o branch dois antes de concluir o trabalho. Por isso, o gabarito é C, stash. Em geral, o uso mais comum é algo como "git stash", que guarda as modificações não commitadas, e depois "git stash pop" ou "git stash apply" para recuperá-las. Em prova, sempre pense: se a ideia é esconder temporariamente alterações locais para mudar de contexto, o nome certo é stash.

Continue treinando

Questões relacionadas