NPM - 如何在不更新的情况下安装新包或添加 package.json 中描述的包
NPM - How to install a new package without update or add packages described on package.json
这是一个很难的问题,我会尽力解释。
如何在不安装依赖项或新包(在package/-lock.json中定义)的情况下添加新包?
例如:目前,我们有 package.json 和 package-lock.json 来维护版本控制。
但是,如果我们尝试添加新包,其他包(与 package.json 或包-lock.json 相关)正在 updated/added。
目的只是添加新包,在package.json和package-lock.json中添加这些包信息,而不影响当前安装的包。
如果您不希望任何包自动更新,请转到 package.json 并进行一些更改。
例如改变
"react-native": "^0.56.1"
到 "react-native": "0.56.1"
只需删除您在版本声明之前看到的插入符“^
”或波浪号“~
”。
- Caret "
^
" 符号使 npm 能够更新次要版本更新(对于
以上示例 56 到 57 或更高)和
- 波浪号“
~
”使 npm 能够更新补丁版本更新([major, minor, path]
元组中最右边的元素)
如果您在没有任何符号的情况下声明您的包版本,它们将不会被更新。
使用 npm ci
而不是 npm install
!
来自docs:
It will never write to package.json or any of the package-locks: installs are essentially frozen.
还有其他注意事项和差异,我建议阅读文档以获取更多详细信息。例如,它将删除现有的 node_module
个目录。
这是一个很难的问题,我会尽力解释。
如何在不安装依赖项或新包(在package/-lock.json中定义)的情况下添加新包?
例如:目前,我们有 package.json 和 package-lock.json 来维护版本控制。
但是,如果我们尝试添加新包,其他包(与 package.json 或包-lock.json 相关)正在 updated/added。
目的只是添加新包,在package.json和package-lock.json中添加这些包信息,而不影响当前安装的包。
如果您不希望任何包自动更新,请转到 package.json 并进行一些更改。
例如改变
"react-native": "^0.56.1"
到 "react-native": "0.56.1"
只需删除您在版本声明之前看到的插入符“^
”或波浪号“~
”。
- Caret "
^
" 符号使 npm 能够更新次要版本更新(对于 以上示例 56 到 57 或更高)和 - 波浪号“
~
”使 npm 能够更新补丁版本更新([major, minor, path]
元组中最右边的元素)
如果您在没有任何符号的情况下声明您的包版本,它们将不会被更新。
使用 npm ci
而不是 npm install
!
来自docs:
It will never write to package.json or any of the package-locks: installs are essentially frozen.
还有其他注意事项和差异,我建议阅读文档以获取更多详细信息。例如,它将删除现有的 node_module
个目录。