我有几个关于作曲家的问题:
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的开发依赖项以及其他"特殊情况"。
但这个问题太宽泛了,无法给出一个好的答案。当您遇到"特殊情况"的麻烦时,再问一次。