Questão de Engenharia de Software — Git — INSTITUTO AOCP 2025
- Código
- qa699941
- Banca
- INSTITUTO AOCP
- Órgão
- PARANAPREVIDÊNCIA
- Ano
- 2025
- Cargo
- ATI ( )
- Agit init
- Bgit status
- Cgit branch
- Dgit push
- Egit pull
GabaritoD — git push
Gabarito: letra D. O comando git push é o responsável por enviar os commits do repositório local para o repositório remoto, atualizando o histórico compartilhado com a equipe. É exatamente o que o analista precisa após revisar as alterações localmente.
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. Isso permite trabalhar offline, mas exige que, para compartilhar o trabalho com a equipe, seja feita uma sincronização explícita entre o repositório local e o remoto. O comando git push realiza essa sincronização no sentido local → remoto, enviando os commits que ainda não existem no repositório remoto.
Para entender melhor, imagine o fluxo de trabalho típico: você faz alterações no diretório de trabalho, adiciona essas alterações à área de preparo com git add, consolida-as em um commit com git commit e, finalmente, envia esse commit para o repositório remoto com git push. O comando git push é a ponte entre o seu ambiente local e o ambiente compartilhado, permitindo que outros membros da equipe vejam e integrem o seu trabalho.
É importante distinguir git push de git pull: enquanto o primeiro envia alterações locais para o remoto, o segundo busca alterações do remoto para o local. São operações complementares, mas com direções opostas. A confusão entre esses dois comandos é uma pegadinha clássica em provas, pois ambos lidam com a comunicação entre repositórios.
Outro ponto relevante é que o git push não é o único comando de sincronização, mas é o específico para enviar commits. O git fetch também busca alterações do remoto, mas não as integra automaticamente ao seu trabalho, enquanto o git pull já faz a integração. O git push não tem um equivalente direto de "enviar e integrar" — ele simplesmente atualiza o repositório remoto com os commits locais.
Na prática, o analista, após revisar suas alterações e criar os commits localmente, deve executar git push para que essas alterações fiquem disponíveis no repositório remoto, permitindo que os demais membros da equipe as acessem. Esse é o comando que completa o ciclo de compartilhamento do trabalho.
Agora, vamos analisar cada alternativa para fixar o conceito e identificar os distratores.
O comando git init é utilizado para inicializar um novo repositório Git em um diretório. Ele cria a estrutura interna do Git (como a pasta .git) e marca o início do versionamento. No caso apresentado, o repositório já existe e o analista já fez commits, então não há necessidade de inicializar nada. Esse comando é usado apenas uma vez, no início do projeto.
O comando git status é usado para verificar o estado do repositório, mostrando quais arquivos foram modificados, quais estão na área de preparo e quais ainda não foram rastreados. Ele é uma ferramenta de consulta, não de envio. O analista já revisou as alterações e está pronto para enviar, então o git status não atende à necessidade de compartilhar os commits com o repositório remoto.
O comando git branch é utilizado para listar, criar ou excluir ramificações (branches) no repositório. Ele gerencia as linhas de desenvolvimento paralelas, mas não tem relação com o envio de commits para o repositório remoto. A criação de branches é uma etapa anterior ao desenvolvimento, e o envio das alterações é feito com git push.
O comando git push é exatamente o que o analista precisa: ele envia os commits locais para o repositório remoto, atualizando o histórico compartilhado. Após revisar as alterações e criar os commits, o git push torna essas alterações disponíveis para os demais membros da equipe. É a operação que completa o ciclo de compartilhamento do trabalho no Git.
O comando git pull é utilizado para buscar alterações do repositório remoto e integrá-las ao repositório local. Ele é o oposto do git push: enquanto o push envia, o pull recebe. No caso, o analista quer enviar suas alterações para o remoto, não receber as de outros. Portanto, o git pull não atende à necessidade descrita.
Gabarito: letra D
Link permanente: /questoes/qa699941