2014-10-28 2 views
0

Я новичок в Laravel 4. У меня есть сомнения относительно пакета. Я использую часовую упаковку и уже внес некоторые изменения в соответствии с моими требованиями, и она работает хорошо. Но у вас есть сомнения, когда sentry выпустит некоторые новые функции, и я хочу добавить их в свое приложение , не затрагивая мои предыдущие внесенные вручную изменения.Laravel 4 Обновление пакета без влияния на мои изменения вручную

Прошу вас, пожалуйста, узнать об этом, как я могу это достичь?

ответ

0

Позвольте мне начать с того, что в большинстве случаев это очень плохая идея изменить код пакета. Laravel предоставляет easy way, чтобы естественным образом переопределить некоторые части пакета (особенно такие вещи, как виды и активы).

Теперь, если это не работает для вас, есть два способа изменить код пакета и сохранить свои обновления.

  1. Вилка пакета. Если вы используете fork git repository, у вас есть своя версия пакета. Это означает, что вам приходится самостоятельно обрабатывать обновления, а также означает, что вы контролируете свой код.

  2. Использование --prefer-source. Требовать пакет с composer require vendor/package --prefer-source. Таким образом, он будет клонировать репозиторий git вместо того, чтобы просто загружать копию. Таким образом, когда вы измените код, а затем выполните composer update, он спросит вас, хотите ли вы сохранить локальные изменения. НО: Каждый раз, когда вы обновляете пакет, который вы должны будете убедиться, что в конце концов вы сохранить изменения, а также имеют все изменения в новой версии ...

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

0

Никогда не прикасайтесь к каталогу поставщика. Каталог приложений - это ваша игровая площадка.

Если вы внесли изменения в каталог приложений, вам хорошо идти. Обновление Composer не повлияет на ваш код приложения.

Смежные вопросы