使用.gitattributes文件中的export-ignore规则可排除文件,如/tests、/docs、*.md等,保存后运行composer archive --format=zip --dir=build/即可生成不含指定内容的归档包。

使用 composer archive 命令打包项目时,默认会包含项目中所有符合版本控制规则的文件。如果你希望排除某些特定文件或目录,不能直接通过命令参数实现,但可以通过以下方式间接控制归档内容。
如果项目使用 Git 管理,Composer 会读取 .gitattributes 文件中的 export-ignore 规则来决定哪些文件不包含在归档中。
在项目根目录创建或编辑 .gitattributes 文件,添加要排除的文件或目录:
/tests export-ignore —— 排除 tests 目录/docs export-ignore —— 排除 docs 目录composer.json export-ignore —— 排除某个文件*.md export-ignore —— 排除所有 .md 文件保存后执行:
composer archive --format=zip --dir=build/
生成的压缩包将不再包含被标记为 export-ignore 的内容。
若需更精细控制,可先用 composer install 构建干净目录,再通过 tar 或 zip 命令手动打包并排除指定内容。
示例(Linux/macOS):
composer install --no-dev zip -r release.zip . \ -x "tests/*" \ -x "docs/*" \ -x "*.git*" \ -x "var/*"
这样可以完全掌控归档内容。
基本上就这些。Composer 自身依赖 Git 属性做排除,所以最标准的方式是配置好 .gitattributes。只要写对规则,archive 命令就会自动生效。
以上就是composer archive命令如何排除特定文件或目录的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号