если в качестве способа интеграции репозиториев рассматривать систему подмодулей git, то возможны как минимум три варианта организации структуры:
- создать один репозиторий, в котором файлы с переводами для ваших модулей будут разложены по под-каталогам вида
module1, module2 и т.д., и подключить его как git-подмодуль, например, в каталог translations в, например, корне основного репозитория.
- создать несколько репозиториев по количеству ваших модулей и подключить их как git-подмодули в под-каталоги в каталогах с вашими модулями.
- создать один репозиторий (со структурой как в первом варианте) и подключить его в виде git-подмодуля в каждый из каталогов с вашими модулями.
в любом из этих вариантов придётся либо подправлять сборочные скрипты для указания изменившихся путей к файлам, либо использовать символические ссылки. но с символическими ссылками, насколько я знаю, возникают некоторые проблемы в, например, операционной системе ms/windows.
микро-инструкция по добавлению git-подмодулей
чтобы добавить git-репозиторий (находящийся по адресу url-репозитория) как подмодуль в текущий репозиторий (в котором желательно не должно быть не закоммиченных изменений), выполните в нём команду:
$ git submodule add url-репозитория каталог/куда/добавлять
каталог/куда/добавлять не должен существовать на момент выполнения команды — он будет создан автоматически.
после выполнения этой команды в индекс будет автоматически добавлен каталог/куда/добавлять и новый (или модифицированный, если у вас уже были подключены какие-нибудь подмодули) файл .gitmodules:
$ git status
# On branch master
# Changes to be committed:
# (use "git reset HEAD <file>..." to unstage)
#
# new file: .gitmodules
# new file: каталог/куда/добавлять
эти изменения нужно закоммитить. всё, подмодуль подключен.
если необходимо, можете отправлять изменения в «основной» репозиторий командой push. если «основным» репозиторием пользуетесь не только вы, то после выполнения в клонах этого репозитория команды pull (с вашим коммитом, добавляющим подмодуль), надо ещё выполнить две команды — submodule init и submodule update:
$ git submodule init
Submodule 'каталог/куда/добавлять' (url-репозитория) registered for path 'путь/куда/добавлять'
$ git submodule update
Cloning into 'путь/куда/добавлять'...
done.
Submodule path 'путь/куда/добавлять': checked out 'хэш коммита'