如何最好地自动化NPM相关项目的部署



我习惯于根据Composer(PHP的NPM-cousing)部署代码,Composer运行.json.lock文件。第一个描述了软件包和您的版本限制,第二个列出了安装的确切内容。总是有一个锁定文件,如果运行composer install,你肯定会收到相同的包集;运行composer update将重新读取json文件,安装新版本,并更新锁文件。

这对于生产部署来说非常棒,因为你不需要检查你对版本控制系统的依赖关系,而且你在生产中肯定会有与开发中完全相同的依赖关系。

我的问题是:如何最好地自动化NPM相关代码的部署?有可能实现类似于Composer的方法吗?我注意到npm install只安装package.json文件中第一个可用的内容。在第一次运行后,即如果您更改版本约束,则必须手动npm update该包,这将使自动化部署变得毫无用处,因为无法签入版本控制"将此处的包更新为新版本"。。。

npm shrinkwrap是composer.lock文件的一个类似文件。它将生成一个npm-shrinkwrap.json,其中包含所有版本的dep,因此您可以使用它来部署到生产环境中。此外,您还可以尝试npm中的各种libs来锁定版本或搜索其更新,而无需更改packages.json.

相关内容

  • 没有找到相关文章

最新更新