我在将之前的子模块添加回项目后遇到问题。当我尝试添加子模块时,一切都完美无缺,直到我推动我的更改,git抱怨:
remote: Git submodules detected, installing:
remote: No submodule mapping found in .gitmodules for path 'ng/css/lib/submodule-name'
请记住,这次我将子模块安装到新位置。因此,在上面的代码片段中,错误的路径来自之前的子模块安装,而不是新的。 git在哪里保留这条旧路径信息?
初始子模块添加
我添加了一个git子模块
git submodule add [github link]
当我在以下目录中时:
ng/css/lib
我最终删除了here所描述的子模块。如果您不想阅读我基本上这样做:
rm .gitmodules
删除了.git / config
中的子模块条目git rm --cached ng/css/lib/submodule-name
许多成功的推送后来我想将子模块添加回项目中。我决定它会像之前的安装一样简单。
git submodule add [github link] ng/global
但事实并非如此,我得到“找不到子模块映射”错误,我不知道git如何或在哪里保留此信息。有没有办法永久清理子模块安装?
答案 0 :(得分:0)
您的命令未删除.git/modules/ng/css/lib/submodule-name
.git
repo文件夹的内部),git submodule add
没有重新引入.gitmodules
(如果是,请先删除它)