定制 five-say/vendor-cleaner 二次开发

按需修改功能、优化性能、对接业务系统,提供一站式技术支持

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

five-say/vendor-cleaner

Composer 安装命令:

composer require five-say/vendor-cleaner

包简介

vendor-cleaner

README 文档

README

  • vendor 目录清理程序。
    • 本项目原始规则文件源于 barryvdh/laravel-vendor-cleanup
    • laravel-vendor-cleanup 同样是非常优秀的清理工具,请大家自行选择适用自己的方案。
  • 与 laravel-vendor-cleanup 的区别。
    • 不同于 laravel-vendor-cleanup 的硬删除处理,本项目采取了更为保守的备份策略,一来确保操作的安全性,二来不会对 Composer 的更新速度造成不良影响。
    • laravel-vendor-cleanup 仅适用于 laravel-4,而本项目并无框架限制。

在什么情况下使用 VendorCleaner?

  • 由于主机商的限制无法在部署阶段使用 Composer,需要由本地打包 Vendor 目录上传。
  • Composer 默认安装的 Vendor 目录存在部分非必要文件,造成 Vendor 目录臃肿。

是否有框架限制?

  • 没有。
  • 任何使用 Composer 的项目均可使用。

使用效果如何?

  • laravel-4.1 下进行测试,Vendor 目录瘦身近50%。

如何使用此项目?

在 composer.json 文件中申明依赖:

"five-say/vendor-cleaner": "1.*"

在 composer.json 文件 scripts 属性中加入对应的脚本事件回调:

"scripts": {
    ...
    "pre-update-cmd": [
        "FiveSay\\VendorCleaner::restore"
    ],
    "post-update-cmd": [
        "FiveSay\\VendorCleaner::backup",
        ...
    ],
    ...
},

如此,在每次 update 操作时都将触发 vendor 目录的清理程序。

注意: FiveSay\\VendorCleaner::backup 负责在每次更新后清理 Vendor 目录,清理完成后将在 Vendor 同级目录生成 VendorCleanerBackup 文件夹,用于存放清理出来的文件。而 FiveSay\\VendorCleaner::restore 则会在每次更新前将备份的文件放回 Vendor 目录,以确保 Composer 不会下载多余的文件,加快更新速度。

如何自定义清理规则?

默认使用的规则文件位于 /vendor/five-say/vendor-cleaner/src/FiveSay/VendorCleaner/VendorCleaner.config.php。如果需要使用自定义的规则,在 Vendor 同级目录建立自定义的 VendorCleaner.config.php 即可(注意:这将完全使用用户自定义规则,而忽略默认规则文件)。

这里有一个简单的例子:

'ircmaxell/password-compat' => 'README.md test'

表示:清理 ircmaxell/password-compat 资源包中的 README.md 文件和 test 目录。

five-say/vendor-cleaner 适用场景与选型建议

five-say/vendor-cleaner 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 670 次下载、GitHub Stars 达 11, 最近一次更新时间为 2014 年 02 月 21 日, 在 PHP 生态内属于活跃度较高的组件。

我们在过去多个企业项目中使用过 five-say/vendor-cleaner 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。

围绕 five-say/vendor-cleaner 我们能提供哪些服务?
定制开发 / 二次开发

基于 five-say/vendor-cleaner 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。

BUG 修复 & 性能优化

线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。

项目外包 & 长期维护

承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。

yvsm@zunyunkeji.com QQ:316430983 微信:yvsm316 西安尊云信息科技 · 专注 PHP / Go / 分布式系统研发

统计信息

  • 总下载量: 670
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 11
  • 点击次数: 10
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 11
  • Watchers: 1
  • Forks: 3
  • 开发语言: PHP

其他信息

  • 授权协议: Unknown
  • 更新时间: 2014-02-21