O uso de sistemas de controle de versão é indispensável para o desenvolvimento colaborativo de software. Analise as afirmativas a seguir sobre o funcionamento do Git e fluxos de trabalho.
I- O comando git merge combina históricos de ramos diferentes, criando um commit de mesclagem que preserva a genealogia completa das alterações realizadas em ambos os ramos.
II- O arquivo .gitignore é utilizado para listar arquivos e diretórios que não devem ser rastreados pelo Git, como binários compilados, arquivos de configuração local e dependências.
III- O comando git pull é uma operação atômica que apenas baixa as alterações do repositório remoto sem realizar qualquer alteração ou mesclagem no ramo local de trabalho.
IV- O conceito de 'Head' no Git representa um ponteiro para o commit mais recente no ramo atualmente ativo no diretório de trabalho do desenvolvedor.
Assinale a alternativa que apresenta somente as proposições CORRETAS:
- A II e III.
- B I e III.
- C I, II e IV.
- D I, II, III e IV.
- E I, II e III.