首页 > 解决方案 > 如何分别发布/安装开发和生产环境的 npm 包

问题描述

一个组织有一个私有npm包,该组织的一些应用程序使用该包。在对该包进行更改后,它首先需要仅在开发环境中发布,以便在开发环境中运行的应用程序安装它。对所有应用程序完成测试后,应发布此包,以便生产环境应用程序可以安装它。

就像,组织的所有应用程序都在两个完全相互隔离的独立环境中运行,有没有办法让我们也可以以同样的方式发布/安装私有 npm 包?

由于我们无法package.json通过任何环境变量更改文件的依赖名称或依赖版本,因此yarn install无论环境如何,都将始终安装依赖。

我检查了 npm 的prerelease-tags。据此,我们可以在开发环境中为包提供一个预发布版本。但在这种情况下,我们必须确保在package.json从 dev 推送到 prod 环境时更改版本。

其他解决方案可能是package.json为 dev 和 prod 保留单独的文件,并根据它们运行的​​环境使用其中一个来安装包。

还有其他更好的方法可以做到这一点吗?

标签: javascriptnode.jsnpmyarnpkg

解决方案


推荐阅读