我刚刚生成了一个新的 npm 锁定文件 package-lock.json,作为我典型工作流程的一部分。但我注意到这次所有完整性哈希值都已从 sha1 更改为 sha512。这里发生了什么?
"chalk": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/chalk/-/chalk-2.0.1.tgz",
- "integrity": "sha1-ce5R+nvkyuwaY4OffmgtgTLTDK8=",
+ "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==",
[…]
}
最佳答案
据我所知,npm 将完整性校验和从 sha1 更改为 sha512。
如果您的 git 更改从 sha1 变为 sha512,您应该更新一次,之后就会很好。
如果其他人使用代码库并看到 git 从 sha512 更改为 sha1(这是我遇到的问题),您可以通过运行以下命令来修复它:
放弃 git 中对 package-lock.json 的更改
npm i -g npm
rm -rf node_modules/
npm i
这将更新 npm 并重新安装所有软件包,以便存在新的校验和 (sha512)。
关于npm - 为什么 package-lock.json 将完整性哈希从 sha1 更改为 sha512?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47638381/