Где Git хранит SHA1 фиксации для подмодуля?


Я знаю, что при добавлении подмодуля в репозиторий git он отслеживает конкретную фиксацию этого подмодуля, на который ссылается его sha1.

Я пытаюсь найти, где хранится это значение sha1.

The .gitmodules и .git/config файлы показывают только пути для подмодуля, но не sha1 фиксации.

The git-подмодуль (1) ссылка говорит только об gitlink запись и gitmodules(5) ссылка ничего не говорит и об этом тоже.

1 93

1 ответ:

он хранится в базе данных объектов Git напрямую. Объект дерева для каталога, в котором живет подмодуль, будет иметь запись для фиксации подмодуля (это так называемая "gitlink").

попробуйте git ls-tree master <path-to-directory-containing-submodule> (или просто git ls-tree master если подмодуль находится в каталоге верхнего уровня).