composer 包版本规范
名称 | 实例 | 描述 |
---|---|---|
确切的版本号 | 1.0.2 | 你可以指定包的确切版本。 |
范围 | >=1.0 ; >=1.0,<2.0 ; >=1.0,<1.1|>=1.2 |
通过使用比较操作符可以指定有效的版本范围。有效的运算符:> 、>= 、< 、<= 、!= 。你可以定义多个范围,用逗号隔开,这将被视为一个逻辑AND处理。一个管道符号| 将作为逻辑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 | 1.0.0 |
所有提交到 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