java - Git 子模块和包
问题描述
我是 git 子模块的新手。
我的项目中有以下结构:
src/main/com/feature1
src/main/com/feature2
src/main/com/feature3
src/main/com/commonFeature
我的测试结构相同,但在以下包下:
src/test/com/feature1 ...
由于包“commonFeature”是我想为其他项目重用的东西,我想为它创建一个 git 子模块。我正在考虑以下选项来重新组织我的包结构:
src/main/com/commonFeature/main/
src/main/com/commonFeature/test/
或者
src/commonFeature/main
src/commonFeature/test
然后我会像以前一样保留我的其他包项目:
src/main/com/feature1 ....
不知道什么是最好的方法。有人可以帮忙吗?
谢谢!
解决方案
关于您的问题的一些注意事项:
src/main/com/commonFeature/main/
src/main/com/commonFeature/test/
与您的初始存储库的描述不一致,因此您可能必须修复许多损坏的链接。
src/commonFeature/main
src/commonFeature/test
这也是不一致的,并且在没有任何额外知识的情况下,/main/com/
它是与第一个一样好的替代方案。
看到在这两种情况下,您都必须修复很多链接,您应该以不同的方式思考问题。
您不能在 git 存储库的根目录中添加 git 子模块。这会迫使您将所有公共库移动到新文件夹。如果是这种情况,只需像这样考虑您的新文件夹:
/._
|_ /.git
|_ /main
|_ /test
您必须将其添加到当前的某个位置,具体取决于 , ,/src
的/main
含义/com
。无论如何,您都必须修复损坏的链接。
保留当前树并拥有另一个存储库的替代方法是在同一目录中克隆两个存储库。这很棘手,并且是对 SubModules 造成的限制的一种解决方法。
推荐阅读
- karate - 能够在功能和场景名称中使用环境变量
- typo3 - 图像方向选择的图标大小
- javascript - 如何使用 JavaScript 中的此代码添加命令以在浏览器中启动新选项卡?(等)(带终端)
- c# - RestSharp 返回 ServicePointManager.ServerCertificateValidationCallback += (sender, cert, chain, sslPolicyErrors) => true;
- scrapy - Scrapy spidermon 异常
- firebase - 如何在颤振中添加多个图像(firebase)
- python - 计算两步过程的每日平均持续时间
- c# - 加载/刷新时 ASP.net eTag 缓存缩略图
- excel - 为什么我的 Excel 公式返回“单元格包含 lambda 错误”?
- java - @RestControllerAdvice 在 Spring Boot 反应式 Java 应用程序中不起作用