Три слоя: working tree — файлы на диске; index (staging) — что попадёт в следующий commit; HEAD — текущий commit (через ветку).
Разбор
- Working tree / working directory — каталог исходников, который вы редактируете.
- Index / staging area — бинарный файл
.git/index: список путей, blob-hash, метаданные; не копия файлов на диске.
- HEAD — ссылка на последний commit checkout-нутой ветки (или detached commit).
Цикл
edit (working tree) → git add (index) → git commit (repository, HEAD moves)
Итог
Working tree — правки; index — staged snapshot; HEAD — tip текущей ветки.