Подтвердить что ты не робот

Git: изменить происхождение клонированного подмодуля

Я создал проект submodule и разместил его на Github.

Я создал другой проект supermodule, а затем сделал следующее:

cd supermodule
git init
mkdir lib
git clone git://github.com/tandu/submodule lib/submodule
git submodule add ./lib/submodule lib/submodule

Это сработало хорошо, но на веб-сайте он не может найти ссылку на подмодуль при просмотре файлов (на самом деле он просто говорит "Загрузка данных фиксации" навсегда). Сама папка подмодуля имеет правильный origin.

По-видимому, я должен был сделать

...
mkdir lib
git submodule add git://github.com/tandu/submodule lib

... но это слишком поздно для этого. Как я могу подмодуль в этом проекте правильно указать на origin?

4b9b3361

Ответ 1

Это, по-видимому, очень сильно зависит от версии git, которую вы используете.

  • Если присутствует, измените запись url в разделе [submodule "<dirname>"] файла .gitmodules.
  • Если присутствует, измените запись url в разделе [submodule "<dirname>"] файла .git/config.
  • Измените url в конфигурации самого подмодуля. Местоположение файла config зависит от версии. Старые версии имели его в <dirname>/.git/config, новее в .git/modules/<dirname>/config. Однако вы всегда можете использовать команду ниже:
cd <dirname>
git config remote.origin.url <new_url>