Git - связывание cmds (т.е. ls-файлов) с подмодулями
Есть ли способ связать cmds с подмодулями в вашем репо? Я ищу встроенные методы, так как мне нужно, чтобы это было переносимо и без дополнительных установок.
В моем случае у меня есть конвейер рабочего процесса, основанный на ls-файлах (и журнале), и мне нужно иметь возможность просматривать файлы, которые соответствуют определенным условиям, даже если они находятся в подмодулях.
т.е.
git ls-files some/file/path/above/my/submodules/globed-file
Показывает только файлы в текущем репо и игнорирует файлы субмодуля.
1 ответ
Июнь 2015: Вы можете попытаться выполнить свою команду в каждом подмодуле, используя git submodule foreach
:
git submodule --quiet --recursive foreach "git ls-files yourFile"
Один из подмодулей будет возвращать что-то, если этот файл присутствует в нем.
Обратите внимание, что с Git 2.11+ (4 квартал 2016 года) вы можете использовать вместо:
git ls-files --recurse-submodules
Смотрите " поиск списка файлов (например, используяgit ls-files
) включая подмодули".