Git: Как удалить ссылку на подмодуль, не удаляя репозиторий подмодулей

# #git #gitlab #git-submodules #atlassian-sourcetree

Вопрос:

Как говорится в названии, я хочу удалить только ссылку на другой репозиторий из моего основного репозитория, не удаляя файлы из этого репозитория. Как я вижу, все команды из git удаляют файлы репозитория, и я не хочу этого делать.

Ответ №1:

Тебе стоит попробовать с:

 git submodule deinit {{SUBMODULE_PATH}}
rm -rf .git/modules/{{SUBMODULE_PATH}}
 

Комментарии:

1. Разве rm -rf не удаляет все файлы из репозитория?

2. Нет, он удаляет ссылку на подмодули, хранящуюся в файлах управления git.

3. Деинициализация подмодуля удаляет его рабочее дерево, но операция, похоже, хочет сохранить его… поэтому я не уверен, почему этот ответ принят…