composer require --prefer-stable是什么意思

优先选择稳定版本安装PHP依赖,composer require vendor/package --prefer-stable 在满足依赖时倾向使用如v1.0.0类稳定版,避免dev或beta等开发分支,适用于minimum-stability为dev但希望关键包稳定的场景。

composer require --prefer-stable是什么意思

composer require --prefer-stable 是 Composer(PHP 的依赖管理工具)中的一个命令选项,用于在安装或更新包时优先选择稳定的版本。

美图云修 美图云修

商业级AI影像处理工具

美图云修 61 查看详情 美图云修

基本含义

当你运行 composer require vendor/package --prefer-stable 时,Composer 会尝试为你添加指定的包,并在解决依赖关系时:
  • 优先选择已标记为稳定(stable)的版本,比如 v1.0.0、v2.1.0 等
  • 即使配置中允许使用开发版本(如 dev-main、dev-develop 或 alpha/beta/rc 版本),也会尽量避免,除非没有稳定的替代方案

为什么需要这个选项?

有些项目在 composer.json 中设置了 "minimum-stability": "dev" 或类似设置,这会让 Composer 允许安装不稳定的版本。但你可能只希望某些包使用稳定版,而不是全部。这时:
  • --prefer-stable 可以让你“在宽松环境下追求稳定性”
  • 它不会改变全局最小稳定性要求,但会影响版本解析器的偏好

实际例子

假设你的项目允许 dev 分支(因为 minimum-stability 是 dev),但你想确保 Lar*el 使用稳定版:
composer require lar*el/framework --prefer-stable
Composer 会优先选择像 9.0.0 这样的稳定版本,而不是 9.x-dev 这样的开发分支。

和相关选项的区别

  • --prefer-stable:倾向于稳定版,但不是强制(只是“偏好”)
  • --prefer-dist:优先从 dist(压缩包)安装,而非源码克隆
  • --prefer-source:相反,优先用源码方式安装
  • 想完全禁止不稳定版本?应调整 minimum-stability 或使用 @stable 约束
基本上就这些。这个选项适合那些想在灵活开发环境中保持核心依赖稳定的人。

以上就是composer require --prefer-stable是什么意思的详细内容,更多请关注php中文网其它相关文章!

本文转自网络,如有侵权请联系客服删除。