我在项目中引入子存储库时遇到了麻烦。这个想法是,我把一个模块放在/任意/文件夹中,我想把它包含在我当前的项目中,位于/重要/项目
使用GUI导入模块时…从菜单中实际的文件夹被复制到我的项目子文件夹中。如果两个项目都在不同的存储库中,就会出现维护问题,因为每次更新都需要手动重新导入文件,然后提交给主项目。Mercurial也不允许在任何深度大于根的地方设置子库。
解决这个问题的正确方法是什么?
您是对的,Import Module的GUI会生成一个副本,而不是就地导入。在该功能得到改进之前,您将需要手动设置它。
在导入的模块中,确保它具有构建。Gradle 文件,正确设置构建模块。然后在应用程序的设置中。Gradle 文件,包括如下:
include ':some_module'
project(':some_module').projectDir = new File('/path/to/module')
然后你可以用通常的方式从另一个模块依赖它,要么通过项目结构UI添加依赖项,要么通过将此添加到模块:
dependencies {
compile project(':some_module')
}