【问题标题】:How Teams are using ~ and ^ for package.json (angular4) for production builds团队如何将 ~ 和 ^ 用于 package.json (angular4) 进行生产构建
【发布时间】:2017-10-05 06:18:00
【问题描述】:

我们的团队正在使用 angular4 和 Jenkins 进行开发和生产构建,我们正在寻找一种方法来更好地处理 ~ 和 ^,用于生产构建和测试,以使每个人都保持在相同的版本上,并且在重大时不会发生重大变化在 npm(第三方)版本上发布。有人有什么好的建议或文章可以帮助我们的团队吗?

【问题讨论】:

  • package.lock 文件!
  • 调查一下,我们确实有生成的锁定文件,谢谢!

标签: angular package.json


【解决方案1】:

我曾在几个面临类似问题的团队中工作过。我们与包作者不尊重版本控制的语义和引入具有副作用的更改作斗争。正因为如此,我们做出了一个团队决定,不使用通配符版本,而是明确而有意地升级包。在一个完美的世界中,这不会是一个问题,因为版本控制方案非常清楚地定义了当行为或合同发生变化时应该发生什么,但我们并不生活在一个完美的世界中。

【讨论】:

  • 刚刚对我的团队做出了同样的决定。顺便说一句,另一种可能的处理方法是使用更新版本的 NPM 来编写 package.lock 文件,或者使用 yarn 来编写 yarn.lock 文件,然后对 lock 文件进行版本控制。但最终,在 package.json 中使用特定版本而不是版本范围可能更容易。
猜你喜欢
  • 1970-01-01
  • 2016-01-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-03-14
  • 1970-01-01
  • 2018-03-15
  • 2017-03-26
相关资源
最近更新 更多