Для сферического коня в вакууме, а не реальной имеющейся задачи и ситуации
Отдельные репы - это хорошо, но это делается потом, а вот рекомендация жить с submodule выдает сугубого теоретика, еще не бегавшего по граблям. Субмодули гита - такое УГ, от которого бегут все адекватные.
И да, "использовать сабы" - это же не решение озвученной ТС задачи?!
1. pull делается только в предварительно склонированный репо, зачем он тебе внутри сайта?
2. Читать про хуки гитовые, выбрать тот, который реально работает (на commit в репо и на push, как мне помнится, запускаются разые хуки) - и в нем на доступном для использования инструменте заскриптовать нужные действия (подсказываю - основой будет git archive, надо скрестить первый пример (архивация и сразу распаковка) с шестым, где архивируется только часть дерева репо)
Не надо советовать нехорошего. Рекомендация лечить головную боль топором по шее - не идет в категории добрых советов