Composer的archive命令如何打包项目

Composer的archive命令可将项目按composer.json配置打包为.tar或.zip格式,默认使用当前版本号生成如my-project-1.0.0.tar的文件名,支持通过–format指定压缩类型、–dir设置输出路径、–version定义版本号,并能通过.gitattributes文件中的export-ignore规则排除特定文件,适用于发布不含依赖的干净代码包。

Composer的archive命令如何打包项目

Composer 的 archive 命令用于将项目打包成压缩文件,常用于发布或分发某个版本的代码。它不会打包整个目录,而是根据 composer.json 中的配置生成一个干净的归档包。

基本用法

运行以下命令可以打包当前项目:

composer archive

默认情况下,该命令会:

  • 使用当前项目的版本(从 composer.json 中读取)
  • 生成一个 .tar 格式的压缩包(也可以指定 zip)
  • 文件名格式为:项目名称 + 版本号 + 后缀,例如:my-project-1.0.0.tar

指定格式和路径

你可以自定义打包的格式和输出目录:

composer archive –format=zip –dir=dist/

说明:

  • –format:可选 tar 或 zip,决定压缩包类型
  • –dir:指定输出目录,这里会把包生成到 dist/ 文件夹下

打包指定版本

如果你想打包某个特定版本(前提是版本在 composer.json 中已定义):

Composer的archive命令如何打包项目

百度文心百中

百度大模型语义搜索体验中心

Composer的archive命令如何打包项目32

查看详情 Composer的archive命令如何打包项目

composer archive –version=1.2.3

这会强制使用 1.2.3 版本号生成包名,即使当前 composer.json 中不是这个版本。

排除文件的方法

打包时,Composer 会自动忽略 .git、vendor 等目录,但你也可以通过 .gitattributes 文件控制哪些文件不被打包:

/tests export-ignore
/example export-ignore
*.log export-ignore

只要项目根目录有 .gitattributes 文件,并写入上述规则,archive 命令就会遵循这些排除规则。

基本上就这些。Composer archive 适合快速导出可发布的项目快照,特别适用于私有包或部署场景。注意它只打包源码,不包含依赖(vendor 目录需自行安装)。

js git json composer composer json format git

上一篇
下一篇