Подтвердить что ты не робот

В чем разница между установкой пакета --deployment и пакетом пакетов

Я знаю, что они оба помещают драгоценные камни в ваше приложение в разных местах, но кажется, что пакетная установка --deployment выполняет более тщательную работу. Могу ли я просто добавить каталог поставщика/пакета, который он создает для управления версиями, и сделать это?

4b9b3361

Ответ 1

Посмотрите на описание двух на сайте Bundler.

Запуск bundle install --deployment должен выполняться в рабочей среде, но при запуске он будет захватывать драгоценные камни из rubygems. Подробнее здесь под заголовком "Развертывание вашего приложения" для флага --deployment.

bundle package похож на старую команду rake rails:gems:freeze из Rails 2.3. Он захватывает драгоценные камни и упаковывает их в вендор/кеш. От сайта поставщика здесь:

Вы можете использовать это, чтобы избежать зависимости на rubygems.org во время развертывания, или если у вас есть частные драгоценные камни, которые не находятся в публичный репозиторий

Ответ 2

Я использую bundle install --path vendor/bundle в режиме разработки. bundle install --deployment заблокирует yor Gemfile.lock и не будет обновлять его при изменении Gemfile, поэтому никогда не используйте параметр развертывания в среде разработки. bundle install --no-deployment отключит режим развертывания пакетов. Вы можете прочитать который отправит о правильном использовании пакета.

Ответ 3

Я объяснил аргументы за флаг режима -deployment довольно долго в разговоре, который я дал в RailsConf 2011. Это сообщение в блоге содержит мои заметки для этого разговора, и (надеюсь) охватывает все рассуждения, лежащие в основе пути --deployment работает: http://andre.arko.net/2011/06/11/deploying-with-bundler-notes/