Questão de Engenharia de Software — Git — FUNDATEC 2023
Engenharia de Software›Git
Código
qa541361
Banca
FUNDATEC
Órgão
IFC
Ano
2023
Cargo
PEBTT ( )
Em relação aos comandos da ferramenta de versionamento GIT, assinale a alternativa que apresenta quais fazem parte do sistema GIT:
Acommit, status, diff, add, delete
Bcommit, diff, delete, cd, status
Cstatus, add, clone, push, rebase
Drebase, cd, diff, clone, repository
Erebase, push, add, diff, repository
Revelar gabarito e comentário▾
GabaritoC — status, add, clone, push, rebase
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”.
Comandos do Git: identificando os nativos do sistema
Gabarito: letra C. A alternativa C reúne exclusivamente comandos nativos do Git — status, add, clone, push e rebase — enquanto as demais misturam comandos de sistema operacional (cd, delete) ou termos que não são comandos (repository). A distinção central é que o Git possui seu próprio conjunto de comandos para versionamento, e comandos como cd (change directory) pertencem ao shell do sistema operacional, não ao Git.
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 local. Isso permite que a maioria das operações seja realizada localmente, sem depender de conexão com um servidor central. Os comandos do Git são executados no terminal e interagem diretamente com o repositório, gerenciando o ciclo de vida dos arquivos: criação, modificação, preparação (staging), commit e sincronização com repositórios remotos.
Para entender quais comandos fazem parte do Git, é essencial conhecer as três áreas principais que ele gerencia: o diretório de trabalho (working directory), onde os arquivos são criados e editados; a área de preparo (staging area), que registra as alterações antes de serem consolidadas; e o repositório (repository), que armazena permanentemente o histórico do projeto. Cada comando atua em uma ou mais dessas áreas, e é essa estrutura que define a lógica por trás de comandos como add (move arquivos do diretório de trabalho para a staging area) e commit (consolida as alterações da staging area no repositório).
Na prática, um fluxo típico de trabalho com Git envolve: git clone para obter uma cópia de um repositório remoto, git status para verificar o estado dos arquivos, git add para preparar as alterações, git commit para salvá-las no histórico, git push para enviá-las ao repositório remoto e git rebase para reorganizar o histórico de commits. Esses comandos são nativos do Git e não existem fora do contexto de versionamento.
A pegadinha desta questão está em misturar comandos do sistema operacional com comandos do Git. O comando cd (change directory) é um comando do shell (como Bash ou PowerShell) usado para navegar entre diretórios, e delete não é um comando padrão do Git — para remover arquivos, o Git utiliza git rm. Além disso, termos como repository não são comandos, mas sim conceitos que descrevem a estrutura do Git. A banca explora exatamente essa confusão entre o ambiente do terminal e o ambiente do Git.
Guarde a fronteira entre comandos do Git e comandos do sistema operacional: é exatamente nela que as alternativas se dividem. Comandos como cd, ls, mkdir e delete pertencem ao shell; comandos como commit, status, diff, add, clone, push e rebase pertencem ao Git.
Comando
É nativo do Git?
Função principal
status
✅ Sim
Verifica o estado dos arquivos no diretório de trabalho e na staging area
add
✅ Sim
Move alterações do diretório de trabalho para a staging area
clone
✅ Sim
Copia um repositório remoto para a máquina local
push
✅ Sim
Envia commits locais para o repositório remoto
rebase
✅ Sim
Reorganiza o histórico de commits
cd
❌ Não (shell)
Navega entre diretórios no terminal
delete
❌ Não (SO)
Remove arquivos (no Git, usa-se git rm)
repository
❌ Não (conceito)
Estrutura que armazena o histórico do projeto
Comandos Git
1Nativos
status
add
clone
push
rebase
commit
diff
2Do sistema operacional
cd
delete
3Conceitos (não comandos)
repository
LEVEL · soulevel.com.br
Alternativa A — ❌ Incorreta
A alternativa A inclui delete, que não é um comando nativo do Git. Para remover arquivos do repositório, o Git utiliza git rm, e delete é um comando genérico de sistemas operacionais (como no Windows) ou de linguagens de programação, não do Git. Os demais comandos (commit, status, diff, add) são nativos do Git, mas a presença de delete invalida a alternativa.
Alternativa B — ❌ Incorreta
A alternativa B inclui cd e delete, ambos comandos de sistema operacional, não do Git. cd (change directory) é um comando do shell para navegação entre diretórios, e delete não é um comando do Git. Embora commit, diff e status sejam comandos nativos do Git, a presença de cd e delete torna a alternativa incorreta.
Alternativa C — ✅ Correta ⟵ GABARITO
A alternativa C apresenta exclusivamente comandos nativos do Git: status (verifica o estado dos arquivos), add (prepara alterações para o commit), clone (copia um repositório remoto), push (envia commits para o repositório remoto) e rebase (reorganiza o histórico de commits). Todos esses comandos fazem parte do sistema Git e são utilizados no fluxo de versionamento.
Alternativa D — ❌ Incorreta
A alternativa D inclui cd, que é um comando do shell do sistema operacional, não do Git. Além disso, repository não é um comando, mas sim um conceito que descreve a estrutura onde o histórico do projeto é armazenado. Embora rebase, diff e clone sejam comandos nativos do Git, a presença de cd e repository torna a alternativa incorreta.
Alternativa E — ❌ Incorreta
A alternativa E inclui repository, que não é um comando do Git, mas sim um conceito estrutural. Os demais comandos (rebase, push, add, diff) são nativos do Git, mas a presença de repository invalida a alternativa, pois não é um comando executável no terminal.
NÃO CAIA NESSA!
A banca mistura comandos do sistema operacional (cd, delete) e termos conceituais (repository) com comandos nativos do Git para confundir o candidato. O erro clássico é aceitar cd como comando do Git, quando na verdade ele pertence ao shell. Lembre-se: comandos do Git operam sobre o repositório e o histórico de versões, enquanto comandos como cd e delete são do ambiente do sistema operacional. Com treino, você identifica essas intrusões de longe 💪
PEGA ESSA DICA!
Para questões de comandos do Git, foque nos comandos essenciais do fluxo de versionamento: clone, add, commit, push, pull, status, diff, rebase, merge, branch, checkout, log, reset, rm. Comandos como cd, ls, mkdir, delete são do sistema operacional e nunca devem ser confundidos com comandos do Git.