当我在不同的系统上运行`npm install`时,为什么我会得到大不相同的`package-lock.json`文件

使用相同的git仓库,如果我删除node_modulespackage-lock.json ,我的期望是运行npm install应该每次生成相同的package-lock.json文件(提供或者发送一些可能被发布者更新的模块在过渡期。

我发现我得到了截然不同的文件,这取决于我在OSX机器上还是在Linux机器上执行此操作。

这是预期的吗? 如果是这样,那么提交package-lock.json文件会有什么价值,因为它在这些系统之一上是无效的。 如果不是,这里可能会发生什么?