Как работает спутник (в общем)?

Я новичок в Ruby/Rails, но я смотрел на упаковщика и задавался вопросом, как это работает. Вы устанавливаете полный набор драгоценных камней, таких как обычный gem install XYZ, а затем используете Gemfile для вытягивания определенного подмножества этих драгоценных камней для использования с конкретным приложением? Или вы больше не устанавливаете драгоценные камни и просто включаете их в Gemfile, а затем делаете bundle install, чтобы включить их в пакет, который затем используется с вашим приложением?

Большое вам спасибо за то, что нашли время, чтобы ответить на этот вопрос, я просто немного смущен тем, что функциональность коммутатора точно.

- MAP

Ответы

Ответ 1

Подумайте о пакете как инструменте управления пакетами.

Из команды bundle help:

bundle install # Установите текущую среду в систему

bundle package # Заблокирует и затем кэширует все драгоценные камни в вендор/кеш

Итак, команда bundle install установит все драгоценные камни в систему, которые перечислены в Gemfile, а также их зависимости. Если драгоценный камень ранее не был установлен, он будет захватывать его из репозитория gemcutter. bundle package будет кэшировать файлы .gem в каталог приложений поставщиков/кешей.

Не нужно сначала запускать gem install.