新闻中心

Composer的 archive 命令怎么用_快速打包你的PHP项目及其Composer依赖

2025-12-01
浏览次数:
返回列表
Composer 的 archive 命令可快速将 PHP 项目打包为 tar 或 zip 文件,便于分发部署;默认读取 composer.json 生成如 my-project-1.0.0.tar 的文件,不包含 vendor 目录;通过 --format=zip --dir=dist/ 可指定格式和输出路径;使用 --with-dependencies 可包含依赖,适合离线部署;支持对指定包如 vendor/package-name 打包;通过 .gitattributes 中的 export-ignore 规则可排除 tests、配置文件等;合理配置版本号与 .gitattributes,结合参数可高效生成轻量部署包。

composer的 archive 命令怎么用_快速打包你的php项目及其composer依赖

Composer 的 archive 命令可以快速将你的 PHP 项目打包成压缩文件,方便分发或部署。它不仅能打包项目源码,还能结合 Composer 配置控制打包内容,比如是否包含依赖、排除特定目录等。

基本用法:打包当前项目

在项目根目录下运行以下命令:

composer archive

默认情况下,该命令会:

  • 读取当前项目的 composer.json
  • 使用项目名称和版本号生成文件名(如 my-project-1.0.0.tar
  • 打包当前项目中所有符合规则的文件
  • 不包含 vendor/ 目录中的依赖(除非特别配置)

指定格式和目标目录

你可以自定义打包格式和输出位置:

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

这会生成一个 zip 文件,并保存到 dist/ 目录下。支持的格式有 tarzip

包含依赖库(vendor)

如果你希望打包时包含所有已安装的依赖:

composer archive --with-dependencies

这个选项会把 vendor/ 中的依赖也加入压缩包,适合需要离线运行的部署场景。

ChatGPT Writer ChatGPT Writer

免费 Chrome 扩展程序,使用 ChatGPT AI 生成电子邮件和消息。

ChatGPT Writer 106 查看详情 ChatGPT Writer

配合 version 使用,打包指定版本

你也可以对已安装的某个包进行归档:

composer archive vendor/package-name --format=zip

前提是该包已经通过 Composer 安装到项目中。

排除文件:利用 .gitattributes 控制内容

Composer 的 archive 命令会识别项目中的 .gitattributes 文件。如果某行包含 export-ignore,对应文件将不会被打包。

例如,在 .gitattributes 中添加:

/tests export-ignore
.php_cs.dist export-ignore

这样测试目录和配置文件就不会出现在最终的压缩包里。

基本上就这些。合理使用 composer archive,可以让你快速生成干净、轻量、可部署的项目包,无需额外脚本。关键是配置好版本号和 .gitattributes,再根据是否需要依赖选择参数。

以上就是Composer的 archive 命令怎么用_快速打包你的PHP项目及其Composer依赖的详细内容,更多请关注php中文网其它相关文章!


# 让你  # 银川市网站优化步骤图表  # 阿里云大学 网站建设  # 宜春市网站推广公司  # 自助网站建设服务平台  # 泰兴网站推广靠谱吗  # 天津网站seo优化定制  # 58赶集有seo吗  # 巴中网站建设题库答案  # 温州网站建设商城地址  # 青岛网站优化推广排名  # 还能  # 你可以  # php  # 如果你  # 不包含  # 离线  # 回调  # 如何使用  # 如何解决  # 配置文件  # composer  # json  # git  # js 


相关栏目: 【 科技资讯46185 】 【 网络学院92790


相关推荐: Kafka Streams中基于消息头条件过滤消息的实现指南  Composer的 "licenses" 命令如何帮助你遵守开源协议_检查项目依赖的许可证合规性  淘宝支付提示失败如何解决 淘宝支付流程优化方法  苹果手机指南针不准怎么校准 传感器校准方法详解【建议收藏】  解决Python单元测试中Mock异常方法调用计数为零的问题  PHP中获取MongoDB服务器运行时间(Uptime)的专业指南  顺丰快件物流信息 官方网站查询入口  漫蛙manwa官网登录界面_漫蛙漫画网页版主站入口  一加手机电池耗电快怎么办_一加手机电池耗电快的解决方法  漫蛙2网页版漫画入口 漫蛙漫画在线官方登录  包子漫画官方网站阅读入口-包子漫画在线漫画官网直达链接  mysql如何设置表访问权限_mysql表访问权限配置  漫蛙官网正版漫画入口 漫蛙2官方网页登录地址  印象笔记如何设离线包出差查阅_印象笔记设离线包出差查阅【离线阅读】  神经网络二分类模型训练异常:高损失与完美验证准确率的排查与修正  2025俄罗斯Yandex最新入口 官方网站地址及浏览器下载指南  特斯拉自动驾驶房车计划曝光 原型车将于2027年亮相  Pandas DataFrame 多条件优先级排序与排名  Windows10怎么开启存储感知 Windows10系统设置自动清理临时文件释放C盘空间【教程】  AO3网页版合集入口 Archive of Our Own同人作品浏览指南  随机参数递归函数的基准调用次数与时间复杂度探究  Go语言中的*string:深入理解字符串指针  Win10双系统截图高效法 截屏快捷键速记【技巧】  基于动态规划的房屋花卉种植最小成本算法详解  TypeScript/J*aScript:高效查找数组中首个唯一ID对象  如何使用Go和Martini动态服务解码后的图片  126邮箱账号注册 电脑版登录入口  C++20的source_location是什么_C++在编译期获取源码位置信息用于日志和断言  虫虫漫画精品漫画官网_虫虫漫画精品漫画官网进入精品漫画  在J*a中如何使用BigDecimal进行高精度计算_BigDecimal类应用指南  windows10怎么查看本机ip_windows10命令提示符ipconfig使用  J*a应用集成GitHub CLI与API认证指南  必由学登录入口 必由学官方网站在线访问链接  Highcharts 雷达图径向轴标签定制指南:利用多Y轴实现数值标注  LINUX下如何进行磁盘分区_fdisk与parted工具在LINUX中的使用对比  uc浏览器网页版入口 uc浏览器网页版最新网址  俄罗斯浏览器官网直达链接 俄罗斯浏览器最新在线入口导航  《铁拳8》黑皮辣妹新实机:元气满满的18岁少女!  在Blazor WebAssembly应用中动态注入客户端特定指标代码的策略  铁路12306官网网页端快速入口 铁路12306官方首页登录教程  漫蛙MANWA漫画主页官方入口 漫蛙漫画最新在线阅读地址  小红书商家版怎样在笔记嵌入商品卡路径_小红书商家版在笔记嵌入商品卡路径【挂载教程】  J*aScript中在Map循环中检测并处理空数组元素  抓大鹅解压小游戏 抓大鹅摸鱼解压入口  vivo手机参数配置怎么增强信号_vivo手机参数配置信号增强方法  Go语言中高效处理x-www-form-urlencoded表单数据  AWS EC2实例间SQL Server连接超时:安全组配置与故障排除指南  蛙漫官方正版入口 蛙漫网页在线全集免费观看  深入理解Go语言中的指针类型:以*string为例  使用 Pandas 高效处理 .dat 文件:数据清洗与数值计算实战 

搜索