composer 包版本规范

名称 实例 描述
确切的版本号 1.0.2 你可以指定包的确切版本。
范围 >=1.0 ; >=1.0,<2.0 ; >=1.0,<1.1&#124;>=1.2 通过使用比较操作符可以指定有效的版本范围。有效的运算符:>>=<<=!=。你可以定义多个范围,用逗号隔开,这将被视为一个逻辑AND处理。一个管道符号&#124;将作为逻辑OR处理。AND 的优先级高于 OR。
通配符 1.0.* 你可以使用通配符*来指定一种模式。1.0.*与>=1.0,<1.1是等效的。
赋值运算符 ~1.2 这对于遵循语义化版本号的项目非常有用。~1.2相当于>=1.2,<2.0。想要了解更多,请阅读下一小节。

~1.2 相当于 >=1.2,<2.0
~1.2.3 相当于 >=1.2.3,<1.3
^1.2 相当于 >=1.2

测试版包

通过标签(tag)定义版本,可以使用的后缀有 alpha, beta, RC, p

1
2
3
4
5
6
1.0.0
v1.0.0
1.10.5-RC1
v4.4.4beta2
v2.0.0-alpha
v2.0.4-p1

所有提交到 Github 的分支代码默认被当作 dev 版

项目中规定最低稳定性版本

1
"minimum-stability": "stable", // 表示最低安装版本为稳定版

项目中测试自己的分支

比如依赖项目为 ljj/lib,分支为:feature-ljj composer.json 中 require 添加

1
"ljj/lib": "dev-feature-ljj@dev",

开头的 dev- 前缀表示是一个分支(开发)版,后面的 @dev 后缀表示稳定性是 dev。这样在执行

1
composer update

后就可以看到已经安装了该分支的代码


参考:
https://www.jianshu.com/p/fd65d2f30e77
https://igor.io/2013/02/07/composer-stability-flags.html
https://docs.phpcomposer.com/04-schema.html