我正在开发一个Angular 4(Angular CLI)项目。我的主应用程序使用一个git存储库( http://..../main.git )。我有2个子项目,其中包含Angular 4组件( http://..../subproject1.git 和 http://..../subproject2.git )。
这是主要应用
的结构主应用
| ---- E2E
| ---- node_modules
| ---- SRC
- - - - | ----应用
---------- | ----组分
---------- | ----子模块
- - - - | ----资产
这是子项目1 和子项目2 应用
的结构subproject1
| ---- JavaCode
- - - - | ----...
| ---- AngularCode
- - - - | ----组分
---------- | ---- COMPONENT1
---------- | ---- COMPONENT2
subproject2
| ---- JavaCode
- - - - | ----...
| ---- AngularCode
- - - - | ----组分
---------- | ---- component3
---------- | ---- component4
有什么方法可以“在构建时复制”或使子项目的符号链接位于文件夹下
主应用
| ----...
| ---- SRC
- - - - | ----应用
---------- | ----...
---------- | ----的子模块
------------------ | ---- subproject1 // AngularCode文件夹
------------------ | ---- subproject2 // AngularCode文件夹
在运行 ng build 阶段之前,Angular CLI可以识别我的两个子模块吗?
答案 0 :(得分:0)
您实际上可以使用肠道子模块:https://git-scm.com/book/en/v2/Git-Tools-Submodules
基本上你可以使用那些注册git repo作为另一个git repo的子模块。在你的主repo git中,然后总是跟踪一个特定的提交作为你的子模块的引用。
如果您对子模块进行了更改,则可以使用git submodule update - - remote
简单地更新到最新提交。
您也可以只处理主项目内的子模块,然后检查子模块中的更改,然后更新主仓库中的引用!
阅读文档可能会有用,但我说这正是你想要的!
答案 1 :(得分:0)
好的,所以我想我知道了。我需要将git子模块定义为Angular模块,并使用 ng-packagr 工具打包它们。之后,我需要将它们作为常规的Angular模块依赖项安装在我的主项目中。
有关更多参考,您可以检查项目official url