Es normal, git diff
muestra los cambios que aún no están en staging ni confirmado. Si haces git add
y luego git commit
esos cambios ya están guardados en el historial de Git, si que git diff
ya no muestra nada porque no hay cambios sin confirmar. Para ver las diferencias entre tu último commit y el anterior:
git diff HEAD~1 HEAD
y si solo quieres ver lo que tiene tu último commit es:
git show
El comando git diff
solo mostrará cambios sin confirmar!
El orden que tu quieres es:
git status
git diff # (Opcional) Ver diferencias en el working directory (rojo)
git add . # Pasar los cambios al staging
git diff --staged # (Opcional) ver cambios en staging
git commit -m "mensaje"
git push