Pular para o conteúdo principal

Questão de Engenharia de Software — Git — VUNESP 2023

Engenharia de SoftwareGit
Código
vu196688
Banca
VUNESP
Órgão
TJM SP
Ano
2023
Cargo
Tec CPDJ ( )

Git é um sistema de controle de versões utilizado no desenvolvimento de soluções de software.

 

Um usuário que deseja copiar o conteúdo de um repositório público em sua máquina pode fazer isso por meio do seguinte comando:

  1. Agit-clone
  2. Bgit-copy
  3. Cgit-init
  4. Dgit-add
  5. Egit-push
Revelar gabarito e comentário

GabaritoA — git-clone

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 essenciais de versionamento

Gabarito: letra A. Para copiar o conteúdo de um repositório público para a máquina local, o comando correto é git clone (na alternativa, grafado como git-clone). Esse comando cria uma cópia local completa do repositório remoto, incluindo todo o histórico de versões. Os demais comandos (git init, git add, git push) têm funções diferentes no fluxo de trabalho do Git, e git copy não existe como comando nativo.

O Git é um sistema de controle de versão distribuído, o que significa que cada desenvolvedor mantém uma cópia completa do repositório em sua máquina. Essa característica é fundamental para entender o papel de cada comando. O fluxo básico de trabalho com o Git envolve três áreas principais: o diretório de trabalho (onde os arquivos são editados), a área de preparo (staging area, onde as alterações são registradas antes do commit) e o repositório (onde o histórico é armazenado permanentemente).

O comando git clone é a porta de entrada para um projeto existente: ele baixa o repositório remoto (por exemplo, do GitHub) para o computador local, criando uma cópia de trabalho com todos os arquivos e o histórico de commits. É diferente de git init, que cria um novo repositório vazio, e de git pull, que atualiza um repositório já clonado com as alterações mais recentes do remoto.

A confusão mais comum em provas é misturar as funções dos comandos. Veja a função de cada um:

Comando

Função

git clone

Copia um repositório remoto para a máquina local

git init

Cria um novo repositório local vazio

git add

Adiciona alterações do diretório de trabalho à área de preparo

git commit

Registra as alterações da área de preparo no repositório (histórico)

git push

Envia commits locais para o repositório remoto

git pull

Atualiza o repositório local com as alterações do remoto

A banca explora exatamente essa distinção: quem confunde clone com init ou com push erra a questão. Guarde o critério: copiar um repositório existente = clone; criar um repositório novo = init; enviar alterações = push.

Alternativa A — ✅ Correta ⟵ GABARITO

O comando git clone (ou git-clone) é o responsável por copiar um repositório remoto para a máquina local. Ele cria uma cópia de trabalho completa, com todos os arquivos e o histórico de versões, permitindo que o usuário comece a trabalhar no projeto imediatamente. É o comando padrão para "baixar" um repositório público, como os hospedados no GitHub, GitLab ou Bitbucket.

Alternativa B — ❌ Incorreta

Não existe o comando git copy no Git. O Git não possui um comando nativo com esse nome. A função de copiar um repositório é exclusiva do git clone. A banca criou um distrator com um nome que parece intuitivo, mas que não corresponde a nenhuma operação real do Git.

Alternativa C — ❌ Incorreta

O comando git init é utilizado para criar um novo repositório Git vazio em um diretório local. Ele inicializa a estrutura interna do Git (pasta .git) para que o versionamento comece a ser aplicado. Não copia nada de um repositório remoto; é o ponto de partida para um projeto novo, não para baixar um existente.

Alternativa D — ❌ Incorreta

O comando git add é usado para adicionar alterações do diretório de trabalho à área de preparo (staging area). Ele prepara os arquivos para o próximo commit, mas não interage com repositórios remotos e não copia conteúdo de lugar nenhum. É uma etapa do fluxo interno de versionamento, não uma operação de cópia.

Alternativa E — ❌ Incorreta

O comando git push é utilizado para enviar os commits locais para um repositório remoto. Ele faz o caminho inverso do clone: em vez de copiar do remoto para o local, envia as alterações do local para o remoto. É uma operação de publicação, não de cópia inicial.

NÃO CAIA NESSA!

A banca explora a confusão entre os comandos que "trazem" e os que "enviam" dados. clone e pull trazem do remoto para o local; push envia do local para o remoto. E init não copia nada — apenas cria um repositório vazio. Na prova, leia o verbo do enunciado: "copiar" aponta direto para clone.

Gabarito: letra A

Link permanente: /questoes/vu196688