我在android studio中有一个包含很多文件夹的大项目,所以我决定将项目的一部分创建为子模块。让我们假设这个项目结构:
A
|-B
|-C
|-D
|-E
|-F
|- log.c
|- ...
起初,整个A
文件夹是1个存储库。由于我想将文件夹F
拆分为子模块,因此我为F
创建了一个存储库,并为A
和F
的其余部分创建了另一个存储库。这样就变成了这样:
A
|-B
|-C
|-D
|-E
|-F // submodule link file
现在,如果我使用git clone --recursive
克隆此新存储库,它将同时克隆A
和子模块F
。
但是现在当我处理这个新的克隆项目时,我遇到了一些奇怪的问题:
F
始终在项目的git更改历史记录中。应该这样吗?我想提交F
的更改吗?Compare file with same repository version
时,出现以下错误:
我认为它显示了一个不应存在的问题,即使在出现此错误后显示出差异。你知道我的问题是什么吗?
我应该说我已经读过this线程,但是由于我没有在android studio中添加子模块,所以没有收到unregisterd vcs root detected
消息。可能是因为我在使用git clone --recursive
之后打开了项目,而不是在android studio中的项目设置下配置了子模块存储库,所以发生了我的问题吗?