Questão de Engenharia de Software — Gerência de Configuração — Quadrix 2025
- Código
- qg597703
- Banca
- Quadrix
- Órgão
- CREMESE
- Ano
- 2025
- Nível
- Superior
- Cargo
- Analista de Sistemas
- CCerto
- EErrado
GabaritoC — Certo
✅ CERTO. O Git é, de fato, um sistema de controle de versão distribuído, e a afirmação descreve com precisão suas três funções centrais: rastrear alterações (histórico de commits), colaborar em equipe (branches, merges, pull requests) e gerenciar múltiplas versões do código (tags, branches, releases). Não há nenhum erro conceitual na assertiva.
O controle de versão é uma prática essencial da engenharia de software, inserida na área de gerência de configuração. O objetivo é registrar e controlar as mudanças feitas no código-fonte ao longo do tempo, permitindo que a equipe saiba o que mudou, quando mudou, por que mudou e quem mudou. Sem isso, o desenvolvimento colaborativo seria um caos: alterações se sobrescreveriam, bugs seriam impossíveis de rastrear e não haveria como voltar a uma versão estável do sistema.
Existem dois grandes modelos de controle de versão:
Critério | Centralizado (ex.: SVN, CVS) | Distribuído (ex.: Git, Mercurial) |
|---|---|---|
Repositório | Um único servidor central | Cada desenvolvedor tem uma cópia completa (clone) |
Trabalho offline | Limitado (depende do servidor) | Total (commits locais, sem servidor) |
Histórico | No servidor | Em cada clone local |
Backup | Centralizado | Naturalmente distribuído (cada clone é um backup) |
Fluxo de trabalho | Commit direto no servidor | Commit local + push/pull para sincronizar |
A principal característica que define o Git como distribuído é que cada desenvolvedor possui uma cópia completa do repositório, incluindo todo o histórico de commits. Isso significa que ele pode trabalhar offline, criar branches, fazer commits e até mesmo consultar o histórico sem precisar de acesso ao servidor central. A sincronização acontece através dos comandos push (envia commits locais para o remoto) e pull (busca commits do remoto para o local).
Na prática, o Git permite que uma equipe trabalhe em paralelo: cada membro cria um branch (ramificação) para desenvolver uma funcionalidade, faz seus commits localmente e, ao final, integra seu trabalho ao branch principal (geralmente main ou master) através de um merge ou pull request. O histórico de commits funciona como um "diário" do projeto, permitindo rastrear exatamente quando cada alteração foi feita e por quem — e, se necessário, reverter uma alteração problemática com git revert ou git reset.
A pegadinha que a banca poderia explorar aqui seria trocar "distribuído" por "centralizado", ou afirmar que o Git não permite rastrear alterações. Mas a assertiva está correta em todos os seus termos: distribuído, rastrear alterações, colaborar em equipe e gerenciar múltiplas versões são exatamente as funções do Git.
A banca poderia tentar confundir o candidato trocando "distribuído" por "centralizado" — o SVN é centralizado, o Git é distribuído. Fique atento a essa inversão clássica.
✅ CERTO.
Link permanente: /questoes/qg597703