0xch/composer-vendor-cleanup

从供应商目录中移除白名单中的不必要的文件(如测试/文档等)

v1.1.0 2021-05-23 11:55 UTC

This package is auto-updated.

Last update: 2024-09-23 18:55:11 UTC


README

Latest Version on Packagist Total Downloads

Composer供应商清理

这是一个简单的脚本来移除Composer中包含的供应商包中的不必要的文件(文档/示例/测试等)。因此,它是一个可以作为部署脚本一部分轻松使用的脚本。

在我的项目中,它可以节省大约20-30%的供应商大小。

它使用预定义的白名单(rules.json)来移除文件。因此,不适用于包含包的风险降低。脚本基于barryvdh的包的规则 https://github.com/barryvdh/composer-cleanup-plugin .

请随时提交包含新规则或功能的pull请求。

安装

添加到composer

composer require 0xch/composer-vendor-cleanup

然后添加到您的 composer.json

"scripts": {
    "cleanVendor": [
        "Oxch\\Composer\\CleanupScript::cleanVendor"
    ]
}

(可选) 将 rules.json 复制到自定义目录并修改以适应您的需求,然后将文件名作为参数传递给composer。

使用方法

安装完成后,只需运行命令(在 安装 步骤中定义)

composer cleanVendor    #use default rules config file
composer cleanVendor customRules.json    #use custom rules config file    

它将遍历所有已安装的包,这些包位于白名单中,并移除不必要的文件。

查找大文件

您可以使用此命令显示可能的不必要文件,通过将其添加到您的自定义规则配置文件中可以删除这些文件。

du -hd 5 vendor/ | sort -h | grep -Pi "/(tests?|examples?|samples?)$"