Обновление Composer удалило мои изменения

Я работаю над Laravel приложение, и я выполнил команду composer update для того, чтобы установить новые пакеты, которые я добавил.

я имел изменено / добавлено несколько файлов в каталоге продавца до этого, и те файлы, которые были добавлены, были удалены. я имею не зафиксировано в моем каталоге поставщиков (еще одна ошибка!), поэтому я не могу получить их обратно через git.

Теперь мои вопросы:

  1. Что происходит, когда composer update побежал?

  2. Почему удаленные файлы не находятся в Корзина, у чего имеется
    случилось с ними? Навсегда удален?

Кроме того, я хорошо знаю, что могу откатить обновление своего композитора, но это не вернет мне мои измененные файлы, а скорее установит оригинальные файлы предыдущей версии.

Пожалуйста, дайте мне знать, если есть какой-либо другой способ (даже восстановление файла), чтобы помочь мне вернуть эти изменения.

2

Решение

  1. composer update ищет новые версии установленных зависимостей и, если найдены, устанавливает новые версии вместо старых. Неважно, были ли внесены какие-либо изменения в установленные зависимости, потому что он смотрит только на их описания, хранящиеся в composer.lock файл.
  2. Скорее всего, файлы не могут быть восстановлены с помощью composer по причинам, указанным выше. Вы можете попробовать найти потерянные файлы в каталоге кеша .composer/cache, но я не вижу причин, чтобы потерянные файлы были там. Да, они, вероятно, навсегда удалены, и, если они критичны, вам следует искать программу для восстановления файлов.

Вы определенно не должны хранить какие-либо изменения, сделанные в зависимости по указанным причинам.

Кроме того, вы, вероятно, не должны добавлять vendor/ в ваш репозиторий, для всех зависимостей отслеживаются с composer.lock во всяком случае, и изменение зависимостей внутри vendor (делая их жестко закодированными) против composer рабочий процесс.

РЕДАКТИРОВАТЬ:

По предложению Кевина Дангласа, вы также можете попытаться найти потерянные изменения в локальной истории вашей IDE (например, в PHPStorm).

9

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]