是否可以在 nx 工作区中使用不同的应用程序作为 git 子模块?

Posted

技术标签:

【中文标题】是否可以在 nx 工作区中使用不同的应用程序作为 git 子模块?【英文标题】:Is it possible to use different apps as git submodules in a nx workspace? 【发布时间】:2020-06-16 23:24:09 【问题描述】:

我想构建一个由 Angular 前端应用程序使用的 nestjs 后端。他们每个人现在都在一个存储库中。我偶然发现了用于 monorepo 工具的 nrwl-nx,我真的很想使用它。

但我现在的问题是:工作空间中是否可以有不同的应用程序,但每个应用程序都作为自己的 git 子模块?像这样:

workspace_folder
|- apps
|  |- application1 <--- git submodule 1
|  |- application2 <--- git submodule 2
|- libs
|...

如何正确设置它们?可以完全由 nx CLI 完成吗?我在 nx 文档中找不到任何具体的内容。

【问题讨论】:

也许你找到了解决这个问题的办法? 【参考方案1】:

是的!我相信您可以结合使用 Yarn 工作区和 Nx 工具来做到这一点。

所以本质上你需要导航到你的应用程序文件夹并运行:

git submodule add https://github.com/[URL for your application 1] application1 git submodule add https://github.com/[URL for your application 2] application2

更多详情:https://blog.nrwl.io/dev-workflow-using-git-submodules-and-yarn-workspaces-14fd06c07964

一个例子是这样的:https://github.com/nrwl/nx-example-multirepo

【讨论】:

以上是关于是否可以在 nx 工作区中使用不同的应用程序作为 git 子模块?的主要内容,如果未能解决你的问题,请参考以下文章

在 Nrwl/Nx 工作区中包含一些库的包

我可以在一个 Nx 工作区中将 NX CLI 用于 Angular 和 React 应用程序吗?

使用 Nrwl 的 Nx 中的数据持久性模块,悲观更新的实现与乐观更新有何不同

UG NX二次开发-外部模式

NX二次开发用户出口函数介绍

在基于 nx 的 nodejs 应用程序中使用环境变量