archive-format 设置压缩包格式如 tar.gz,archive-dir 指定输出目录;2. 配合 .gitattributes 控制归档内容;3. 执行 composer archive 时按配置生成并保存压缩包。

Composer 的 archive-format 和 archive-dir 配置项用于自定义项目打包(composer archive)时的行为。它们控制生成的压缩包格式和存放目录。
archive-format:设置压缩包格式
该配置指定使用 composer archive 命令打包项目时生成的文件格式。
支持的格式通常包括:tar、tar.gz、zip 等,具体取决于系统是否安装了对应工具(如 gzip、zip)。
在 composer.json 中配置示例:
{
"config": {
"archive-format": "tar.gz"
}
}
执行 composer archive 时,会默认生成一个以当前版本命名的 .tar.gz 文件。
archive-dir:指定打包输出目录
这个配置决定压缩包保存的位置。如果不设置,默认输出到当前目录下的 dist 文件夹。
你可以通过 config 指定自定义路径:
{
"config": {
"archive-dir": "/path/to/my/archives"
}
}
确保该目录存在且有写权限,否则命令会失败。
实际使用场景
运行 composer archive 打包项目时,Composer 会:
- 读取版本信息(如 version 字段或 Git 标签)
- 排除 .git、vendor 等非必要文件(遵循 .gitattributes)
- 根据 archive-format 创建对应格式的压缩包
- 将文件保存到 archive-dir 指定的目录
例如命令:
composer archive --format zip --dir ./releases这条命令会临时覆盖配置,生成 zip 包并存放到 ./releases 目录。
基本上就这些。合理配置这两个选项,能让你更方便地自动化发布项目包。注意配合 .gitattributes 使用,控制哪些文件包含在归档中。










