作曲家版本问题


Composer version questions

我有几个关于作曲家的问题:

1( 在客户项目中我应该更好地使用哪种运算符?^~

2(当我指定:

"behat/behat": "~1.3"

这是否意味着它将采用 2.0 <</strong>的所有版本,例如 1.3、1.3.4、1.3.7、1.4、1.5.7 ...还是只是计算第二位数字(1.3、1.4、1.5、1.6...(?

3(当我指定:

"behat/behat": "^1.3"

这里的行为如何,关于数字 2(。

还有其他特殊情况,在指定版本号时需要小心吗?


p.s 我已经阅读了作曲家版本文档。

1( 在客户项目中我应该更好地使用哪种运算符?^或~?

首选插入符号^而不是波浪号~运算符。

2+3(当我指定时,这是什么意思:"behat/behat": "~1.3"

~1.3相当于>=1.3 <2.0.0

简述:

~设置了一个最低版本,并允许最后一个版本数字上升,同时保持BC安全

详细地:

  • 它将获取一个以 1.3 系列的最低版本开头的版本作为下限,可能1.3.0
  • 它将继续1.3.*1.4.*等(所有版本(
  • 但它将保持在版本 2.0.0 的上限版本边界以下

主要版本的切换(此处从1.*.*2.*.*(表明向后兼容性可能中断(请参阅语义版本控制标准(。包管理器将避免获取中断性更改以保持软件依赖项集正常工作。

还有其他特殊情况,在指定版本号时需要小心吗?

有一些特殊情况

,例如获取"dev-master"和具有稳定性dev的开发依赖项以及其他"特殊情况"。

但这个问题太宽泛了,无法给出一个好的答案。当您遇到"特殊情况"的麻烦时,再问一次。