使用 --prefer-dist 可提升项目创建效率,它优先从 CDN 下载预打包依赖而非克隆 Git 仓库,显著加快下载速度、减少磁盘占用,并避免因网络限制导致的 git 超时问题,特别适合快速初始化框架或生产部署场景。

使用 composer create-project --prefer-dist 创建项目时,相比默认方式,它在特定场景下具备一些明显优势。核心在于 --prefer-dist 参数控制了依赖包的安装来源,从而影响速度、稳定性和本地开发体验。
下载速度更快
当指定 --prefer-dist 时,Composer 会优先从预打包的压缩包(通常是 zip 或 tar.gz)下载项目和依赖,而不是通过版本控制系统(如 Git)克隆源码。
- dist 包是远程 CDN 缓存的静态文件,下载速度快
- 无需执行 git clone,省去拉取完整历史记录的开销
- 特别适合网络较慢或需要快速搭建环境的场景
减少磁盘和内存占用
使用 dist 模式不会包含版本控制元数据(如 .git 文件夹),因此更轻量。
- 生成的项目目录更干净,不附带源码仓库的历史记录
- 节省磁盘空间,尤其对大型框架(如 Laravel)效果明显
- 适合生产部署或临时测试环境,避免冗余文件
提升初始化稳定性
某些环境下 git 访问不稳定(如企业网络限制 SSH),使用 dist 可绕过这些问题。
- 依赖通过 HTTPS 下载,兼容性更好
- 避免因 git 超时或认证失败导致创建中断
- 对于公开包,dist 资源通常由 packagist.org 统一托管,可靠性高
更适合项目模板类操作
当你用 create-project 初始化一个框架或应用骨架(如 laravel/laravel),通常不需要后续贡献代码,此时不需要源码仓库。
- 直接获得可运行的代码快照
- 后续可自行初始化新的 git 仓库,保持历史清晰
- 避免继承原项目的提交历史,结构更独立
基本上就这些。如果你只是想快速搭建一个基于现有项目的应用实例,--prefer-dist 是更高效、简洁的选择。不复杂但容易忽略。










