有没有人体验过如何将现有的 NodeJS API 添加到现有的(Angular)Nx Monrepo?
不幸的是,手册对我帮助不大 https://nx.dev/migration/manual
有没有人体验过如何将现有的 NodeJS API 添加到现有的(Angular)Nx Monrepo?
不幸的是,手册对我帮助不大 https://nx.dev/migration/manual
将 repo 迁移到 mono repo 的过程需要几个手动步骤。我认为没有更简单的方法可以做到这一点。
假设您的节点项目不与您当前的 monorepo 共享文件,这应该是步骤:
package.json
文件(我们稍后会将其与 monorepo 的文件合并)git remote add node-repo <your git repo's node url>
pull
以使 node repo 分支在 monorepo 中可用git pull
在你的 monorepo 上创建一个新的分支 'merging-node-repo'。
将分支合并node-repo/to-monorepo
到您的merging-node-repo
分支中,保留历史记录:
git merge node-repo/to-monorepo --allow-unrelated-histories
推送您的新分支(所有代码及其历史记录现在都将列在这个新分支中)
node-repo
从本地 monorepo 配置中删除远程
git remote rm node-repo
手动将所有节点 repo 的原始package.json
文件依赖项合并到 monorepo 的依赖项中,并npm install
从 monorepo 运行。这样你的package-lock.json
文件就会更新。完成后,创建一个提交并推送它。
最后一步更棘手。您现在必须手动更新 monorepo 的配置文件以允许 nx 开始管理它。这是您在问题中的链接可能会有所帮助的地方。完成后,创建一个提交并推送它。
通过这些步骤,您可以将您的merging-node-repo
分支合并到 master。
我建议你创建一个单独的 nx 工作区,上面有一个 nodejs 项目。这有助于您为所有必要的 nx 配置和依赖项建立基线。您可能想确保您的项目通过这个分离的工作区中的 nx 命令运行;这样,您将有更好的机会获得正确的 monorepo 配置。
希望这能让你开始。