Объяснение
Рабочее дерево содержит текущие файлы, индекс — следующий снимок, commit — сохранённый снимок с родителями. git diff показывает неиндексированные изменения, git diff --staged — подготовленные к commit.
Задача для самостоятельного решения
Изменили файл, выполнили add, затем снова изменили. Что войдёт в commit?
Показать разбор ответа
Версия на момент add. Последующая правка останется в рабочем дереве, пока её отдельно не добавить. Сверьте оба diff перед commit.