如何通过Composer发布压缩版项目包?
- 内容介绍
- 文章标签
- 相关推荐
本文共计850个文字,预计阅读时间需要4分钟。
它不打包整个项目目录,而是根据`composer.json`中定义的包结构生成归档:
关键点在于:归档内容由 composer.json 驱动,不是当前工作目录的快照。所以执行前必须确保:
-
composer.json的name和version字段已正确填写(如"myorg/myapp": "1.2.0") - 若依赖未安装,
vendor/不会出现在归档里——这没问题,因为 archive 本就不打包依赖 - 想排除某些文件?在
composer.json中加"archive": {"exclude": ["docs/", "scripts/deploy.sh"]}
为什么 --format=tar 生成的是 .tar 而不是 .tar.gz?
composer archive 的 --format=tar 只调用系统 tar 命令做归档,不触发 gzip 压缩;同理 --format=zip 调用 zip 工具,也不额外压缩。
本文共计850个文字,预计阅读时间需要4分钟。
它不打包整个项目目录,而是根据`composer.json`中定义的包结构生成归档:
关键点在于:归档内容由 composer.json 驱动,不是当前工作目录的快照。所以执行前必须确保:
-
composer.json的name和version字段已正确填写(如"myorg/myapp": "1.2.0") - 若依赖未安装,
vendor/不会出现在归档里——这没问题,因为 archive 本就不打包依赖 - 想排除某些文件?在
composer.json中加"archive": {"exclude": ["docs/", "scripts/deploy.sh"]}
为什么 --format=tar 生成的是 .tar 而不是 .tar.gz?
composer archive 的 --format=tar 只调用系统 tar 命令做归档,不触发 gzip 压缩;同理 --format=zip 调用 zip 工具,也不额外压缩。

