#git
#git
Вопрос:
У меня есть проект, в котором есть несколько подмодулей, и я пытаюсь заставить их действовать как обычные папки, а не репозитории. Я удалил .git/
папку в каждом из них, но они по-прежнему действуют как подмодули, и когда я запускаю a git status
, они, похоже, не отображаются как неотслеживаемые файлы.
Комментарии:
1. Зачем ты это делаешь?
2. потому что мне нужен «моментальный снимок проекта».
3. Почему это взято в кавычки? Что вы на самом деле имеете в виду ? Что вы делаете со снимком?
4. не имеет значения, что я делаю. Когда я запускаю контейнерное приложение, я хочу, чтобы подмодули были загружены в виде каталогов. Теперь они выталкиваются как подмодули git
5. Да, это имеет значение, потому что может быть совершенно другой способ достичь того, что вы делаете, и решение проблемы XY может облегчить жизнь каждому. Нажатие на что? Почему что бы это ни было, важно, являются ли они подмодулями или нет?
Ответ №1:
Подмодуль необходимо удалить с помощью git rm
(это приведет к удалению файлов подмодуля из вашей файловой системы). Затем вы можете клонировать репозиторий подмодуля в свой репозиторий (используя git clone
), удалить каталог .git в каталоге «подмодуля» и git add
!
Комментарии:
1. Существует несколько подмодулей, которые я использую. Обычно я клонирую родительский проект, затем запускаю ‘git submodule —init’, чтобы получить файлы подмодулей. Он также устанавливает ЗАГОЛОВОК каждого подмодуля в определенную фиксацию. Так что, если делать это по-своему, клонирование каждого подмодуля отдельно может не указывать им на правильную фиксацию
2. Вы можете выполнить проверку правильной версии внутри каталога перед удалением
.git
.3. в этом проблема, если я удалю папку .git, она по-прежнему не отображает папку подмодуля как неотслеживаемый файл
4. Сначала вы полностью удалили подмодуль, используя
git rm
?