Компьютеры · Инструкция
Git diff --submodule=log: показать коммиты внутри изменённого submodule
Когда superproject меняет указатель submodule, обычный diff часто показывает лишь две ревизии. Формат `log` раскрывает,
Короткий ответ
Запустите `git diff --submodule=log` для незастейдженных изменений или добавьте нужный диапазон коммитов. Вместо только старого и нового SHA Git выведет список коммитов submodule между этими состояниями.
Что делать
- 1. В superproject выполните `git diff --submodule=log`.
- 2. Для staged-изменения используйте `git diff --cached --submodule=log`.
- 3. Для двух ревизий укажите диапазон: `git diff A B --submodule=log`.
- 4. Проверьте список коммитов submodule перед коммитом изменения указателя.
Важные ограничения
- Команда показывает историю между записанными SHA submodule; локальные незакоммиченные изменения внутри submodule требуют отдельной проверки.
- Формат можно задать постоянно через `diff.submodule`.
Что учитывать
Команда показывает историю между записанными SHA submodule; локальные незакоммиченные изменения внутри submodule требуют отдельной проверки.,Формат можно задать постоянно через `diff.submodule`.
Источники и проверка
Фактическая часть сверена по первичным источникам (в т.ч. git-diff Documentation). Пример и формулировки — редакция N1RO на 2026-09-18.