Chr*_* B. 66 git git-submodules
我有一个项目,用于在路径中包含子模块mysubmodule
.我从源代码(1.8.3-rc2)安装了最新的Git并运行git submodule deinit mysubmodule
.然后我删除了.gitmodules
文件并提交了更改.我还.git
从mysubmodule
文件夹中删除了该目录.
我现在想mysubmodule
直接将文件提交到我的仓库,但是git说没有变化.如果我输入git add mysubmodule
它什么都不做.如果我输入git add mysubmodule/file.txt
它说fatal: Path 'mysubmodule/file.txt' is in submodule 'mysubmodule'
我还发现,如果您查看一个新版本的repo,它会创建一个mysubmodule
目录,尽管没有.gitmodules
文件.跑步git submodule init
会给你一个No submodule mapping found in .gitmodules for path 'mysubmodule'
错误.
我该如何解决?
Von*_*onC 88
Git仍然认为mysubmodule
是一个子模块,因为它以特殊模式"160000"记录在索引中.
有关更多信息,请参阅" 最初只需要git子模块更新? ".
要检查一下,如在本回答中,您可以执行以下操作:
$ git ls-tree HEAD mysubmodule
160000 commit c0f065504bb0e8cfa2b107e975bb9dc5a34b0398 mysubmodule
Run Code Online (Sandbox Code Playgroud)
这不取决于.gitmodule
文件的存在,也不取决于文件的内容mysubmodule
.
您需要先从索引中删除该条目:
git rm --cached mysubmodule
Run Code Online (Sandbox Code Playgroud)
然后你可以继续.
归档时间: |
|
查看次数: |
17574 次 |
最近记录: |