fny*_*fny 34 node.js npm yarnpkg
我不小心npm install在一个使用Yarn的项目中运行,并注意到npm创建了一个package-lock.json文件.
我知道Yarn的受欢迎程度部分是因为它使用了一个锁定文件来产生比npm更可靠和确定性的依赖安装,而npm只有一段时间只有一个残缺的收缩包装功能,但现在我不知道该怎么做这个npm lockfile业务以及是否有任何令人信服的继续使用纱线.
因此,在纱线与收缩包裹的StackOverflow上的先前Q和A的精神中,我问以下问题:
Raj*_*ani 20
在纸面上,纱线和NPM 5看起来几乎相同.它们都具有确定性锁定文件,并且在功能上几乎相互匹配.有人会说纱线是推动NPM创新的催化剂.
然而,在经历了一个月的NPM 5后,我的团队决定搬到Yarn.
NPM在技术上具有"更确定性"的锁定文件,因为理论上保证在NPM版本中,NPM将生成完全相同的node_modules文件夹.另一方面,Yarn对依赖项的确切提升/排序取决于Yarn版本,并且可能会在Yarn版本中发生变化.总的来说,这几乎没有什么影响.
为什么要用Yarn呢?合并和可靠性.
Yarn做了一个轻微的决定论权衡,以实现一个更yarn.lock容易合并的更简单的文件.如果您是独立开发人员,这可能不会对您产生影响,但如果您的团队中有多个协作者提交依赖项更改,则很快就会成为一个巨大的问题.NPM package-lock实际上是不可合并的,你最终不得不重新生成或挣扎.另一方面,使用Yarn,合并很容易且可预测.
请参阅:https://yarnpkg.com/blog/2017/05/31/determinism/
另外,我们还发现Yarn平均更可靠.
| 归档时间: |
|
| 查看次数: |
6189 次 |
| 最近记录: |