如何更新使用静态版本号的Composer项目至最新补丁版本
如何更新静态版本号的Composer包至最新补丁版
当你的composer.json里指定了类似"my/package": "1.2.34"的静态版本号时,想要更新到该主版本分支下的最新补丁版(比如1.2.99),可以用以下两种方法:
方法一:修改版本约束并更新
- 打开
composer.json,把静态版本号替换成能匹配补丁版本的约束:- 用
"1.2.*":明确匹配1.2.x系列的所有版本 - 用
"~1.2":等价于>=1.2.0 <1.3.0,自动拉取1.2分支的最新补丁版 - 用
"^1.2":若遵循语义化版本,等价于>=1.2.0 <2.0.0(包含所有1.x的补丁和小版本更新,若仅需补丁版建议用前两种)
- 用
- 执行命令更新指定包:
这样Composer会自动拉取对应分支的最新补丁版本,并更新composer update my/packagecomposer.lock文件。
方法二:直接通过命令行临时更新(不修改composer.json)
如果不想改动composer.json的版本约束,可直接在命令行指定版本范围来更新:
composer update my/package:1.2.*
这个命令会忽略composer.json里的静态版本号,拉取1.2分支的最新补丁版,同时更新composer.lock。但要注意,后续若执行不带包名的composer update,如果composer.json还是静态版本号,可能会回退到原来的版本(除非composer.lock存在且未被删除)。
内容的提问来源于stack exchange,提问作者JKB
相关产品推荐
相关产品推荐

