设置 minimum-stability 为 dev 会允许安装开发阶段的依赖包,包括 dev、alpha、beta 和 RC 版本,使项目能使用最新功能但增加不稳定风险。默认 composer 只安装 stable 版本,开启 dev 模式后可能导致依赖冲突、运行异常及部署问题,尤其不推荐在生产环境使用。更稳妥的做法是仅对特定包指定开发版本,如 "vendor/package": "dev-main",以保持其余依赖稳定。

将 Composer 的 minimum-stability 设置为 dev 意味着你允许项目安装所有开发阶段的依赖包,包括那些尚未正式发布的版本。
影响说明
默认情况下,Composer 只会安装标记为 stable(稳定)的包版本,例如 1.0.0、2.1.3 等。当你把 minimum-stability 设为 dev,Composer 会接受以下类型的版本:
- dev:开发分支(如 dev-main、dev-develop)
- alpha:早期测试版本
- beta:测试版本
- RC(Release Candidate):候选发布版本
这让你能使用最新的功能或修复,但也带来一定风险。
可能带来的问题
启用 dev 稳定性后,需要注意以下几个方面:
- 依赖包可能不稳定,导致程序运行出错或行为异常
- 频繁更新可能导致兼容性问题,特别是当主干分支(main/develop)持续变动时
- 生产环境部署风险增加,不推荐在正式项目中全局开启
- 其他开发者或部署环境需保持一致配置,否则可能出现“在我机器上能跑”的问题
更推荐的做法
如果你只需要某个特定包的开发版本,建议不要全局设置 minimum-stability 为 dev,而是使用 inline alias 或直接指定开发版本:
- 在 composer.json 中这样写:
"vendor/package": "dev-main"或"vendor/package": "dev-develop as 1.2.3" - 这样可以只对需要的包使用开发版,其余仍保持稳定版本约束
基本上就这些。全局设为 dev 虽然方便,但容易引入不可控因素,合理按需引入开发版本才是稳妥做法。