Множественные URL-адреса подмодуля git - для удаленных подмодулей

У меня есть репозиторий git с двумя пультами (github и bitbucket). Внутри у меня есть подмодуль, который указывает на другой репозиторий github/bitbucket. Но в определении подмодуля есть url, который является жестко запрограммированным. Могу ли я иметь двух из них? Или один на пульт? Так что мое основное репо на github указывает на подмодуль на github. И мое основное репо на Bitbucket указывает на подмодуль на битбакете?

[submodule "programs/mgr-nancy-demo"]
    path = programs/mgr-nancy-demo
    url = [email protected]:wedkarz/mgr-nancy-demo.git

Ответ 1

Кажется, вы можете использовать относительные URL-адреса для подмодулей. От git help submodules:

КОМАНДА

Добавить

[...]

<repository> - это URL-адрес нового репозитория оригиналов подмодулей. Это может быть абсолютный URL-адрес или (если он начинается с./или../), местоположение относительно репозитория оригинала суперпроектов

Итак, если вы соблюдаете одно и то же соглашение об именах на обоих сайтах (т.е. github.com/you/parent-project, bitbucket.org/you/parent-project, github.com/you/child-project и bitbucket.org/you/child-project), вы должны установить такой подмодуль следующим образом:

[submodule "programs/mgr-nancy-demo"]
    path = programs/mgr-nancy-demo
    url = ../mgr-nancy-demo.git

Проверьте это - YMMV!