Questão de Engenharia de Software — Git — FUNDATEC 2023
Engenharia de Software›Git
Código
qa541362
Banca
FUNDATEC
Órgão
IFC
Ano
2023
Cargo
PEBTT ( )
Em relação ao comando “cherry-pick” da ferramenta de versionamento GIT, analise as assertivas abaixo, assinalando V, se verdadeiras, ou F, se falsas:
( ) Realiza o clone de um repositório.
( ) Permite selecionar commits específicos para trazer a sua branch desejada.
( ) Pode causar commits duplicados.
( ) Libera a edição do hash de um commit.
A ordem correta de preenchimento dos parênteses, de cima para baixo, é:
AV – V – F – V.
BF – V – V – F.
CF – V – F – F.
DF – V – V – V.
EV – F – V – F.
Revelar gabarito e comentário▾
GabaritoB — F – V – V – F.
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: o comando cherry-pick
Gabarito: letra B — sequência F – V – V – F. O cherry-pick não clona repositórios (isso é função do clone), permite trazer commits específicos para a branch atual, pode gerar commits duplicados e não libera a edição do hash de um commit (o hash é calculado pelo Git e não pode ser alterado manualmente).
O cherry-pick é um comando do Git usado para aplicar um ou mais commits de uma branch em outra, sem precisar fazer um merge completo. Ele é útil quando você quer trazer apenas uma correção ou funcionalidade específica de uma branch para outra, sem trazer todo o histórico de commits da branch de origem. O comando funciona copiando as alterações do commit selecionado e criando um novo commit na branch atual, com um novo hash.
Uma característica importante do cherry-pick é que ele pode gerar commits duplicados. Isso acontece porque, ao aplicar um commit em outra branch, o Git cria um novo commit com um hash diferente do original, mesmo que as alterações sejam as mesmas. Se você fizer um merge posteriormente, o Git pode detectar que as alterações já foram aplicadas, mas em alguns cenários, como quando o commit original é modificado ou quando há conflitos, pode haver duplicação de commits no histórico.
O hash de um commit é um identificador único calculado pelo Git com base no conteúdo do commit, incluindo o autor, a data, a mensagem e o estado dos arquivos. Ele é usado para garantir a integridade do histórico e não pode ser editado manualmente. Qualquer alteração no conteúdo do commit resultaria em um hash diferente, o que quebraria a integridade do repositório.
cherry-pick
1O que faz
Aplica commits específicos em outra branch
Cria novo commit com novo hash
2O que NÃO faz
Não clona repositório (função do clone)
Não edita hash (calculado pelo Git)
3Efeito colateral
Pode gerar commits duplicados
LEVEL · soulevel.com.br
Assertiva 1 — ❌ Falsa
A afirmativa diz que o cherry-pick realiza o clone de um repositório. Isso é incorreto: o comando clone é que copia um repositório remoto para o computador local, criando uma cópia completa do histórico. O cherry-pick opera dentro de um repositório já existente, aplicando commits específicos de uma branch em outra. A banca troca a função de dois comandos distintos: clone (copiar repositório) e cherry-pick (aplicar commits).
Assertiva 2 — ✅ Verdadeira
A afirmativa está correta: o cherry-pick permite selecionar commits específicos para trazer para a branch desejada. Esse é exatamente o propósito do comando: aplicar um ou mais commits de uma branch em outra, sem precisar fazer um merge completo. Por exemplo, se você tem uma branch feature com vários commits e quer trazer apenas um deles para a branch main, usa git cherry-pick <hash-do-commit>.
Assertiva 3 — ✅ Verdadeira
A afirmativa está correta: o cherry-pick pode causar commits duplicados. Isso ocorre porque, ao aplicar um commit em outra branch, o Git cria um novo commit com um hash diferente do original, mesmo que as alterações sejam as mesmas. Se você fizer um merge posteriormente, o Git pode detectar que as alterações já foram aplicadas, mas em alguns cenários, como quando o commit original é modificado ou quando há conflitos, pode haver duplicação de commits no histórico.
Assertiva 4 — ❌ Falsa
A afirmativa diz que o cherry-pick libera a edição do hash de um commit. Isso é incorreto: o hash de um commit é calculado pelo Git com base no conteúdo do commit (autor, data, mensagem, estado dos arquivos) e não pode ser editado manualmente. Qualquer alteração no conteúdo resultaria em um hash diferente, quebrando a integridade do repositório. O cherry-pick não oferece nenhuma funcionalidade para editar hashes.