Добавить подпроект в качестве обычной папки в репозиторий

Я заметил, что в моем каталоге было два модуля, которые были Subprojects моего репозитория Git. Это произошло потому, что я переместил их всех в один репозиторий Git, и эти модули (каталоги) имели свой собственный каталог .git.

Когда я изменил что-либо в этих модулях, я не увидел никаких изменений в моем основном репозитории Git. Я бы увидел только это:

+Subproject commit e97ff0348e6adc697192ca4e6a367bdaeddcda6b-dirty

и др.

Но мне это не нужно. Мне нужен только один репозиторий Git без каких-либо подпроектов. Поэтому я удалил каталоги .git внутри этих подпроектов. И теперь я вообще не вижу никаких изменений в моем основном репозитории.

Я пробовал add * и git init. Но он просто не видит эти каталоги, даже если он находится внутри репозитория. Как я могу сделать Git в этих каталогах, чтобы отслеживать их изменения, как и другие модули?

Мой репозиторий Git выглядит примерно так:

my_project/
 .git
 dir1
 dir2
 dir3 # Let say this is the one directory that Git does not see. So any changes I make here are not tracked at all.
 ...
 ...

P.S. Те каталоги, которые не отслеживаются, не пусты.

Обновление Если я переименую этот каталог, сделаем следующее: git diff

Я получаю это:

diff --git a/dir3 b/dir3
deleted file mode 160000
index e279fc4..0000000
--- a/dir3
+++ /dev/null
@@ -1 +0,0 @@
-Subproject commit e279fc481b9706ad79b24281efdbabd55179aee8

Если я переименую этот каталог обратно в исходное имя, то git diff ничего не вернет или просто не будет сделано никаких изменений.

+3
источник поделиться
1 ответ

После предложения я посмотрел на это: un-subodule a git подмодуль

Сначала попробовали:

git submodule deinit

После этого он не изменил прежнее поведение. Но когда я это сделал:

git rm --cached yourSubmodule

Затем он удалил его как субмодуль, а git начал видеть эти модули в основном репозитории.

+4
источник

Посмотрите другие вопросы по меткам или Задайте вопрос