【发布时间】:2019-02-20 05:53:23
【问题描述】:
我想这里没有硬性答案,但想知道其他人在将package-lock.json 提交到他们的node 存储库时如何处理 diff。
到目前为止,大多数意见似乎都支持提交package-lock.json - 确保在任何地方和任何地方安装完全相同版本的依赖项(请参阅Do I commit the package-lock.json file created by npm 5?
)。但是每次我升级 npm 依赖项时,它都会弄乱 diff 工具。 Github上的码频可视化工具,自从我开始commitpackage-lock.json,基本就没用了。
例如,下图中的两个膨胀峰值是 package-lock.json 仅由 npm update 触发的变化的结果。
有什么办法可以缓解这种情况吗?还是我应该对这个不利因素无动于衷?
【问题讨论】:
-
我习惯使用的一个非常舒适的选项是在
package.json中使用固定版本号并忽略锁定文件。如果您需要更新内容,请不时进行一次。 -
@nicholas 虽然解决了“问题”,但它引入了不稳定。
-
@nicholas 默认情况下,
npm install package其版本被添加为^1.0.0,因此只要其他人在没有锁定文件的情况下安装并且有更新的版本可用,就会安装它。如果该版本中的某些内容发生了变化,例如服务器在本地主机上正常运行时突然崩溃(去年有两次,然后固定所有依赖项)
标签: javascript node.js npm package.json