【发布时间】:2019-03-29 12:46:26
【问题描述】:
有没有办法管理/同步 package-lock.json 文件中的版本属性?我的情况如下:
- 当我有一个新版本时,我手动更新版本属性
package.json,提交并推送。 - 在构建服务器上,
npm install获取构建服务器所需的所有 deps 等。 - 不过,
npm install也会更新package-lock.json中的版本属性以匹配 package.json 中的版本(这很好,但为时已晚)。
我可以在第一步中创建一个npm install 以使package-lock.json 中的版本属性与package.json 中的版本属性同步,然后提交并推送,但对我来说这没有意义(不是npm install 的目的,有人可以简单地忘记,等等。)。我也知道我不应该手动更新 package-lock.json 文件。
- 有没有更好的方法来处理这个问题?
- 我正在使用 NPM 版本 5.6,我知道在版本 5.7 中有一个新命令
npm ci不会改变package-lock.json文件但也不会解决版本需要同步的问题,无论如何现在我想知道在 5.6 版本中是否有办法处理这个问题。
【问题讨论】:
-
在提交之前
npm install --package-lock-only是否更有意义?附: docs.npmjs.com/cli/version -
如果您在 package.json 文件中将版本号更改为 '*' 意味着它会自动采用最新版本。但每次你需要手动安装包
-
@Vinoth 我无法将版本号更改为 '*' 我使用该版本在 UI 上显示它。
-
@wanjas --package-lock-only 究竟做了什么?但仍然没有意义,因为无论如何你都必须做一个
npm install。 -
@mkhayata 通常不鼓励手动编辑 package.json。你可以使用 npm 命令来更新 package.json 和 package-lock.json。
npm install <package-name@version> --save和npm uninstall <package-name@version> --save
标签: node.js npm package.json package-lock.json