在我的子模块中单独提交和推送代码的过程中,根仓库突然认为我的子模块中的代码实际上是根仓库的一部分;也就是说,作为子模块一部分的文件现在显示为要添加到根存储库中的未暂存文件。我通过运行验证了这一点git status
。
几乎就像 git 忘记了子模块之类的东西,并认为我添加了所有这些文件。我确实注意到子模块有一个.git
文件而不是.git
目录。在文件中有这一行
gitdir:../.git/modules/root-repo
并且根存储库具有.git/modules/sub-repo
预期的文件夹。
我如何回到正确的状态?
我想我可以再次克隆根存储库并递归更新子模块,但这似乎很繁重。