Eu tenho um monte de compromissos na reporte. Eu quero ver uma lista de arquivos alterados entre dois commits - de SHA1 para SHA2.
Que comando devo usar?
git diff --name-only SHA1 SHA2
onde só é preciso incluir o suficiente da SHA para identificar os compromissos. Você também pode fazer, por exemplo
git diff --name-only HEAD~10 HEAD~5
para ver as diferenças entre o décimo último compromisso e o quinto mais recente (ou assim por diante).
git diff --name-status [SHA1 [SHA2]]
é como --name-only, exceto que você recebe um simples prefixo contando o que aconteceu com o arquivo (modificado, apagado, adicionado...)
git log --name-status --oneline [SHA1..SHA2]
é semelhante, mas os commits são listados após a mensagem de commit, para que você possa ver quando um arquivo foi alterado.
se você estiver interessado apenas no que aconteceu com certos arquivos/pastas você pode anexar -- < nome do arquivo> [< nome do arquivo>...]
à versão `git log'.
se você quer ver o que aconteceu para um único compromisso, chame-lhe SHA1, então faça
git log --name-status --oneline [SHA1^..SHA1]
Bandeiras de status de arquivo:
M modificado - O arquivo foi modificado
C copyy-edit - O arquivo foi copiado e modificado
R renomear - O arquivo foi renomeado e modificado
Um adicionado - Arquivo foi adicionado
D apagado - O arquivo foi apagado
U não fundido - Arquivo tem conflitos depois de uma fusão