composer archive命令:如何快速打包你的项目?

composer archive 是 Composer 提供的打包命令,用于将项目按版本或分支生成 zip 或 tar 归档文件,默认排除 .git 和 vendor 目录,并遵循 .gitattributes 中的 export-ignore 规则,支持指定输出格式、目录及特定版本打包,适用于发布稳定版或部署分发。

composer archive命令:如何快速打包你的项目?

当你需要将一个 Composer 项目打包分发或部署时,composer archive 命令能帮你快速生成项目归档文件。它会根据当前项目的版本或指定的标签,把代码打包成 zip 或 tar 格式,方便分享或部署。

composer archive 是什么?

composer archive 是 Composer 内置的一个命令,用于将当前项目打包成压缩文件。默认情况下,它会读取 composer.json 中的版本号(version),并基于该版本创建一个归档包,同时排除 .git 目录和 vendor 目录中的开发依赖(除非特别指定)。

这个命令适合在发布稳定版本、构建部署包或制作插件分发包时使用。

基本用法:快速打包当前项目

进入你的项目根目录(即有 composer.json 的目录),运行以下命令:

  • composer archive — 使用 composer.json 中定义的 version 打包,默认格式为 zip
  • composer archive –format=tar — 打包为 tar 格式
  • composer archive –dir=dist/ — 指定输出目录,比如保存到 dist/ 文件夹

例如:

composer archive --format=zip --dir=build/

这会生成类似 projectname-1.0.0.zip 的文件,并保存在 build/ 目录下。

指定版本或分支打包

如果你希望打包某个特定版本或分支,可以加上 version 参数:

composer archive命令:如何快速打包你的项目?

SpeakingPass-打造你的专属雅思口语语料

使用chatGPT帮你快速备考雅思口语,提升分数

composer archive命令:如何快速打包你的项目?25

查看详情 composer archive命令:如何快速打包你的项目?

  • composer archive 2.1.0 — 打包 version 为 2.1.0 的快照
  • composer archive dev-main — 打包 dev-main 分支

注意:指定的版本必须能在当前项目中解析到,通常适用于有明确版本标签的项目。

排除文件与自定义打包行为

Composer 会自动遵循 .gitattributes 文件中的 export-ignore 规则来决定哪些文件不被打包。你可以在 .gitattributes 中添加:

/tests export-ignore /docs export-ignore *.md export-ignore

这样打包时就会忽略 tests、docs 和所有 .md 文件。

如果没有 .gitattributes,Composer 默认只排除 .git 目录。

确保你在打包前配置好这个文件,避免把开发文档或测试代码包含进去。

基本上就这些。合理使用 composer archive 能让你的发布流程更高效,尤其是配合 CI/CD 脚本时非常实用。不复杂但容易忽略细节。

上一篇
下一篇
text=ZqhQzanResources