Как заставить composer переустановить библиотеку?



Я использую приложение скелета ZF2, и у него есть .gitignore, который предотвращает передачу внешних библиотек в git. Во время отладки мне нравится идти и менять вещи здесь и там в источнике библиотек, чтобы узнать, как все работает. Если бы они контролировались версией, было бы очень легко вернуть их в исходное состояние.



Как я могу заставить Composer переустановить определенную структуру, чтобы я мог снова получить свежую немодифицированную копию?



PS: пожалуйста не предлагайте удалить его .файл gitignore, так как он существует по какой-то причине; он предотвращает попадание моих сторонних библиотек в репозиторий моего приложения. Я всегда могу установить их во время автоматического развертывания.

513   4  

4 ответов:

можно использовать --prefer-source флаг для composer для проверки внешних пакетов с информацией VCS (если таковые имеются). Вы можете просто вернуться в исходное состояние. Также если вы выдаете composer update команда composer обнаружит любые изменения, внесенные локально, и спросит, хотите ли вы их отменить.

ваш .файл gitignore связан с вашим корневым проектом (скелет ZF2), и он предотвращает привязку поставщика dir (где находятся ваши сторонние библиотеки) к вашим собственным VCS. Игнорирование файла не имеет отношения к РЕПО git ваших поставщиков.

просто очистите папку поставщиков

rm -rf vendor/*

что я сделал:

  1. удалил папку этой конкретной библиотеки
  2. composer update --prefer-source vendor/library-name

он снова получает библиотеку вместе с Git repo

Я не хотел удалять все пакеты в vendor/ каталог, так вот как я это сделал:

  1. rm -rf vendor/package-i-messed-up
  2. composer install снова

Comments

    Ничего не найдено.