Виявляйте й очищуйте незмінені vendor files за допомогою Laravel Vendor Cleanup.

0
Перекладено ШІ
Оригінал: Laravel News
Оновлено: 03 січня, 2026
Ви коли-небудь замислювалися, які з опублікованих файлів конфігурації Laravel ви дійсно змінювали? Дізнайтеся, як прості artisan‑команди порівнюють файли з оригіналами, показують відсоток відмінностей і допомагають безпечно видаляти зайве.

Коли-небудь замислювалися, які з опублікованих конфігураційних файлів Laravel ви справді змінювали? Після років розробки в папці з опублікованими vendor-файлами накопичується сміття — деякі файли змінені, багато залишилися незайманими, а частина — від пакетів, які давно видалили. Це ускладнює навігацію по кодовій базі й заплутує при оновленнях пакетів.

Laravel Vendor Cleanup від Chris Jones додає Artisan-команди, які інтелектуально порівнюють ваші опубліковані vendor-файли з оригіналами. Вони прибирають коментарі, за потреби нормалізують пропуски, а потім використовують SHA256-хешування, щоб точно показати, які файли ви змінювали (з кольоровими відсотками diff), які ідентичні з vendor (безпечно видаляти) і які залишилися сиротами від видалених пакетів.

Прибирайте зайве, відстежуйте свої кастомізації й оновлюйте пакети з упевненістю — усе через прості artisan-команди.

Функції

Доступні команди

Команди, доступні на момент написання:

php artisan vendor-cleanup:config
 
php artisan vendor-cleanup:migration
 
php artisan vendor-cleanup:lang
 
php artisan vendor-cleanup:view

Приклад

Приклад виводу команди vendor-cleanup:config:

$ php artisan vendor-cleanup:config
 
MODIFIED
+---------------------+------------+
| File                | Difference |
+---------------------+------------+
| config/services.php | 25.7%      |
| config/app.php      | 22%        |
| config/mail.php     | 4.7%       |
| config/cache.php    | 3%         |
| config/queue.php    | 1.7%       |
| config/database.php | 0.8%       |
| config/session.php  | 0.4%       |
| config/apiroute.php | 0.1%       |
+---------------------+------------+
 
UNCHANGED (matches vendor)
+--------------------+------------------------+
| File               | File                   |
+--------------------+------------------------+
| config/auth.php    | config/filesystems.php |
| config/logging.php |                        |
+--------------------+------------------------+
 
MISSING (not published locally)
+-------------------------------------------------------------------+--------------------------------------------+
| File                                                              | File                                       |
+-------------------------------------------------------------------+--------------------------------------------+
| laravel/boost/config/boost.php                                    | laravel/framework/config/broadcasting.php  |
| laravel/framework/config/concurrency.php                          | laravel/framework/config/cors.php          |
| laravel/framework/config/hashing.php                              | laravel/framework/config/view.php          |
| laravel/mcp/config/mcp.php                                        | laravel/tinker/config/tinker.php           |
| mrpunyapal/laravel-extended-commands/config/extended-commands.php | spatie/laravel-data/config/data.php        |
| spatie/php-structure-discoverer/config/structure-discoverer.php   | symfony/http-kernel/config/FileLocator.php |
+-------------------------------------------------------------------+--------------------------------------------+
 
Done.

Спробуйте цей пакет у наявному проєкті й подивіться, що він знайде. Дізнайтеся більше та перегляньте вихідний код на GitHub.

Популярні

Logomark Logotype

Простий пакет RabbitMQ для Laravel

Вам цікаво дізнатися, як спростити інтеграцію RabbitMQ у вашому Laravel-додатку? У нашій статті ми розглянемо пакет Simple RabbitMQ, який дозволяє легко налаштувати багатозʼєднання, публікувати повідомлення та обробляти черги за допомогою простого синтаксису. Читайте далі, щоб дізнатися більше!

Logomark Logotype

Налаштування Xdebug з Docker та PHP 8.4 всього за одну хвилину

Встановлення Xdebug може бути складним завданням, але в цій статті ми розкриємо, як швидко та просто налаштувати його за допомогою Docker на прикладі Laravel. Дочитайте до кінця, щоб дізнатися, як за кілька хвилин зробити Xdebug вашим надійним помічником у розробці

Logomark Logotype

Обробка геопросторових даних за допомогою Laravel Magellan

Ви готові відкрити нові горизонти у роботі з геопросторовими даними в Laravel? Дізнайтеся, як за допомогою PostGIS та пакету Laravel-Magellan можна легко зберігати, запитувати та маніпулювати інформацією про розташування, перетворюючи ваші проекти на вражаючі рішення у сфері картографії та геолокації!