Yarn:将JavaScript依赖项重新部署到Production Server的过程(使用`yarn.lock`文件)

car*_*rse 17 javascript git version-control yarnpkg

我已经阅读了关于Yarn的文档,我知道该lock文件应该提交给VC.见和在一个高层次的解释了为什么锁定文件是必要的,其中列出了一堆命令没有什么他们实际上做太多的解释!

我还读了很多关于StackOverflow的问题,询问lock文件是否应该提交给VC.

但是,所有文档和SO线程似乎都忽略了我想知道的细节,具体如下:什么是正确的程序(正确的一组命令运行):

  1. yarn.lock在需要时更新文件(即在我想要提取最新次要版本的开发环境中并更新lock文件以反映这一点)
  2. 为了使我的锁文件与其他开发人员保持同步,以确保他们从完全相同的依赖版本开发/测试,以及
  3. 用于更新/重新同步node_modules生产服务器上的目录(即确保生产服务器不在依赖包的不同/破坏版本上运行)

我问的部分是因为过去在git pull服务器上执行操作时,我遇到的消息告诉我yarn.lock文件已经独立于开发/ VC过程进行了更新.就我而言,永远不应允许这种情况发生.

Lia*_*Jie 1

  1. 老实说,这是一个意见/偏好的问题。我看到了一些策略:

    • 使用yarn upgrade
    • package.json在运行之前手动插入版本yarn
  2. 就像法比安提到的:使用yarn check

  3. 您可以使用纱线离线镜像,将 npm 包的缓存提交到版本控制中。(参见这篇中等文章)

    另外,使用时还有很多优点yarn --offline

    • 构建速度更快,因为您不必从 npm 注册表获取包。
    • 如果没有正确的依赖项,您的构建将会失败。