Хук update
запускается только тогда, когда кто-то запихнул в текущий репозиторий, что не похоже на то, что вы хотите. Вы можете использовать хук post-commit
, если хотите копировать эти файлы на место каждый раз, когда вы создаете коммит в своем хранилище. (Этого должно быть достаточно, потому что вам нужно будет зафиксировать новую версию любого подмодуля в основном проекте, когда вы измените фиксацию, в которой должен находиться подмодуль. Это было бы естественной точкой для обновления файлов в public/assets
.)
Вы говорите, что ваш тестовый хук не запущен - это может быть просто из-за неправильного имени. Хук обновления должен быть исполняемым файлом с именем .git/hooks/update
(нет, без суффикса .rb
). Точно так же хук после фиксации должен быть .git/hooks/post-commit
.
Вы не должны создавать ловушки в каком-либо конкретном подмодуле для этой задачи, поскольку действие, которое будет выполнять ловушка, относится к основному проекту. Из-за этого не имеет значения, беспокоит ли вас изменение из-за фиксации новой версии субмодулей или просто обновления любого случайного файла.
Для написания хуков вы найдете официальную документацию с хитростями , полезную, и, возможно, эти дополнительные советы .