Uma equipe de desenvolvimento utiliza Git com múltiplas bra...

Próximas questões
Com base no mesmo assunto
Q3911442 Engenharia de Software
Uma equipe de desenvolvimento utiliza Git com múltiplas branches para permitir o desenvolvimento paralelo, integração contínua e a manutenção de versões em produção. O projeto adota versionamento semântico e possui histórico extenso de commits.

Com base nas boas práticas de controle de versões e no funcionamento do Git, analise as sentenças a seguir:

I- Commits pequenos e frequentes facilitam a identificação de regressões e a auditoria de mudanças, especialmente quando integrados a pipelines de CI/CD.
II- A utilização de rebase em branches compartilhadas é recomendada, pois preserva o histórico completo de commits e reduz o risco de inconsistências no repositório remoto.
III- O uso de tags associadas a commits específicos permite identificar releases estáveis e recuperar versões exatas do código implantado em produção.

Analisadas as sentenças, assinale a alternativa CORRETA:
Alternativas

Gabarito comentado

Confira o gabarito comentado por um dos nossos professores

Gabarito: C

Fundamento decisivo: A sentença II era o filtro decisivo: ao afirmar que rebase em branch compartilhada preserva o histórico completo e reduz inconsistências, ela contraria o funcionamento do Git. Com isso, caem as alternativas que a incluem.

Tema central: Boas práticas no Git
Análise das alternativas
A
Errada
Incorreta porque elimina a sentença III, mas III está correta: tags associadas a commits específicos são justamente o mecanismo usual para identificar releases e recuperar versões exatas do código.
B
Errada
Incorreta porque considera a sentença II verdadeira. O erro concreto da II está em afirmar que rebase em branch compartilhada é recomendado e que preserva o histórico completo; pela base, rebase reescreve histórico e pode causar divergências no repositório remoto.
C
Certa
A alternativa C está correta porque a sentença I está alinhada às boas práticas de controle de versões: commits pequenos e frequentes aumentam a rastreabilidade das mudanças, facilitam localizar regressões e ajudam na auditoria, especialmente com CI/CD. A sentença III também está correta porque tags apontam para commits específicos e são usadas para marcar releases e recuperar exatamente a versão implantada. Já a II é a única incompatível com o funcionamento do Git, pois rebase reescreve a sequência de commits e, em branch compartilhada, isso pode gerar divergências e complexidade no remoto.
D
Errada
Incorreta por dois motivos objetivos: inclui a sentença II, que é falsa pelo efeito de reescrita de histórico do rebase em branch compartilhada, e exclui a sentença I, que está correta como boa prática de commits pequenos e frequentes.
Pegadinha da questão
A confusão entre histórico mais linear após rebase e preservação do histórico completo, somada à troca indevida entre branch local/privada e branch compartilhada.
Dica para questões semelhantes
  • Se a afirmação disser que rebase em branch compartilhada preserva o histórico publicado ou é recomendação geral, desconfie: o ponto técnico é a reescrita de commits.
  • Quando a questão mencionar tags ligadas a commits, o critério é verificar se elas estão sendo tratadas como marcadores de versão/release e recuperação exata do estado do código.
  • Afirmações sobre commits pequenos e frequentes devem ser avaliadas pelo ganho de rastreabilidade, auditoria e isolamento de regressões, não como eliminação de defeitos.

Clique para visualizar este gabarito

Visualize o gabarito desta questão clicando no botão abaixo