В каком виде сохраняется commit в Git
Python
Middle
Без компании
В каком виде сохраняется commit в Git
Ответы
Коммит в Git сохраняется как неизменяемый объект в базе данных `.git/objects`. Каждый коммит содержит:
- **SHA-1 хеш** (уникальный идентификатор)
- **Дерево файлов (tree)** — ссылка на snapshot файлов
- **Родительский коммит (parent)** — ссылка на предыдущий коммит (или коммиты, если это merge)
- **Автор, дата и сообщение**
Пример структуры коммита:
```
tree 92b8b6ffb9f3a0d5a3a...
parent 1a410efbd13591db074...
author John Doe <john@example.com> 1625097600 +0300
committer John Doe <john@example.com> 1625097600 +0300
Initial commit
```
Коммиты хранятся в сжатом виде (zlib) и доступны только по хешу. Изменить коммит нельзя — можно создать новый с изменёнными данными.