Pular para o conteúdo principal

Questão de Engenharia de Software — Git — CESPE / CEBRASPE 2024

Engenharia de SoftwareGit
Código
ce403870
Banca
CESPE / CEBRASPE
Órgão
MPO
Ano
2024
Cargo
APO ( )
No que se refere aos conceitos de gestão de configuração, julgue os itens subsequentes.   O comando get clone incorpora as alterações de um repositório remoto no ramo atual.
  1. CCerto
  2. EErrado
Revelar gabarito e comentário

GabaritoE — Errado

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: comandos de integração com repositório remoto

Gabarito: Errado (E). O comando que incorpora as alterações de um repositório remoto no ramo atual é o git pull, e não o git clone. O git clone cria uma cópia local de um repositório remoto, enquanto o git pull busca e integra as alterações do remoto no ramo de trabalho atual. A afirmativa troca a função de dois comandos distintos do Git, e é exatamente essa distinção que a questão cobra.

O Git é um sistema de controle de versão distribuído, o que significa que cada desenvolvedor possui uma cópia completa do repositório em sua máquina local. Essa característica é fundamental para entender a diferença entre os comandos. Quando você inicia o trabalho em um projeto existente, o primeiro passo é obter uma cópia do repositório remoto para o seu ambiente local. Esse processo é realizado pelo git clone, que baixa todo o histórico de commits, todas as branches e todos os arquivos do repositório remoto para o seu computador. Após o clone, você tem um repositório local independente, com o qual pode trabalhar offline.

O git pull, por sua vez, é um comando que atua em um repositório que já foi clonado. Ele é utilizado para atualizar o repositório local com as alterações que foram feitas no repositório remoto por outros desenvolvedores. O git pull é, na verdade, uma combinação de dois outros comandos: git fetch, que baixa as alterações do remoto para uma área de armazenamento local (sem integrá-las ao seu trabalho), e git merge, que integra essas alterações ao ramo atual em que você está trabalhando. Portanto, o git pull é o comando que "incorpora as alterações de um repositório remoto no ramo atual", como descrito na afirmativa.

A confusão entre git clone e git pull é comum, mas a distinção é clara: o clone é usado uma única vez para criar a cópia inicial do repositório, enquanto o pull é usado repetidamente para manter essa cópia atualizada. Imagine que você está trabalhando em um projeto com outros colegas. No primeiro dia, você usa git clone para baixar o projeto para o seu computador. Nos dias seguintes, antes de começar a trabalhar, você usa git pull para obter as alterações que seus colegas fizeram. Se você usasse git clone novamente, estaria criando uma nova cópia do repositório, o que não é o comportamento desejado para atualizar seu trabalho existente.

A banca explora exatamente essa troca de comandos. O candidato que não domina a diferença entre clone e pull pode facilmente marcar a afirmativa como correta, pois ambos os comandos estão relacionados à interação com o repositório remoto. No entanto, a função de cada um é distinta: um cria, o outro atualiza. Guarde essa fronteira: clone = criar cópia; pull = atualizar cópia existente. É nela que a questão se decide.

Git: comandos remotos
  • 1git clone
    • Cria cópia local do repositório
    • Uso único (início do trabalho)
  • 2git pull
    • Atualiza cópia existente
    • Incorpora alterações no ramo atual
    • = git fetch + git merge
LEVEL · soulevel.com.br

Alternativa E — ❌ Incorreta ⟵ GABARITO

A afirmativa está errada porque atribui ao comando git clone a função de incorporar alterações de um repositório remoto no ramo atual, o que é função do git pull. O git clone é utilizado para criar uma cópia local de um repositório remoto, baixando todo o histórico e todas as branches. Já o git pull é o comando que busca as alterações do repositório remoto e as integra ao ramo de trabalho atual, sendo uma combinação de git fetch e git merge. A banca trocou a função de dois comandos distintos, e a alternativa correta é a que identifica essa inversão.

Gabarito: Errado (E).

Link permanente: /questoes/ce403870