Ei, Ivan! Tudo bem?
Agradeço por aguardar o nosso retorno.
Sim, o comportando do git diff é afetado depois de usar o git add com ou sem a flag -a.
O git diff mostra as diferenças entre o diretório de trabalho e a área de stage (índice). Após o git add, as mudanças são movidas para o índice e o git diff não exibe mais essas alterações, mas você pode usar o git diff --chached para comparar a stagind area com o último commit no repositório mostrando o que será incluído no próximo commit.
Sobre o git -a, ele é usado junto com o git commit como git commit -a, que automaticamente faz o stage de todos os arquivos modificados e deletados (mas não novos arquivos) antes de criar o commit. Como ele move as alterações para a staging area e as confirma, o git diff não mostrará mais essas alterações após o commit.
Caso tenha usado o git add e quer reverter, pode usar git reset HEAD <arquivo> ou git restore --staged <arquivo> para remover o arquivo do índice, mantendo as mudanças no diretório de trabalho.
Estes conteúdos podem abrir em inglês e se preferir ler em português, recomendo que utilize o tradutor automático do navegador.
Espero ter ajudado e qualquer dúvida, compartilhe no fórum.
Até mais, Ivan!
Caso este post tenha lhe ajudado, por favor, marcar como solucionado!