Можно ли использовать один URL-адрес субмодуля на одной машине, но использовать другой URL-адрес подмодуля, когда на другом?Использовать разные URL-адреса подмодуля git на разных машинах
Предположим, у меня есть одна машина, которая имеет аутентифицированный SSH-доступ к репозиторию git на центральном сервере и другой машине, которая не имеет доступа к этому серверу. На аутентифицированной машине я использовал git-daemon
для обмена репозиториями с моей машиной, не прошедшей проверку подлинности.
Проблема заключается в том, что клонированный репозиторий имеет несколько зависимостей подмодулей, все из которых являются репозиториями на сервере, для которых требуется аутентифицированный доступ к SSH. В этом случае, у меня есть все подмодулями, хранящиеся на моей машине с проверкой подлинности, так что я могу просто обновить файл .gitmodules от:
[submodule "@sub-a"]
url = ssh://<authenticated-url>/<repo>
branch = master
к ...
[submodule "@sub-a"]
url = git://<ip-of-authenticated-machine>/<repo>
branch = master
Затем работает git submodule sync
и git submodule update --init -r
будет получать подмодули непосредственно с моей аутентифицированной машины, а не с сервера.
Мой вопрос в этом, есть ли какой-либо переносной способ сделать это, чтобы я мог свободно перемещаться между машинами и ожидать правильного поведения git-submodule
?
Не совсем то, что я надеялся, но это определенно может работать. –
Давайте посмотрим, будет ли это привлекать больше ответов, кто-то может доказать, что я ошибаюсь. –