Пакет получает один и тот же драгоценный камень дважды, когда они требуются в 2 разных Gem-файлах? - PullRequest
0 голосов
/ 31 августа 2011

Итак, предположим, что 1 Gemfile использует devise 1.0, а другой также требует тот же самый gem.Сохраняет ли bundle / rvm 2 копии gem devise 1.0 при наличии 2 разных наборов гемов, по одному на каждый гемфайл?

1 Ответ

0 голосов
/ 31 августа 2011

Это зависит от используемого набора камней. Когда вы запустите bundle install, он скомпилирует Gemfile.lock с необходимыми камнями и установит для камня самую высокую версию, доступную на тот момент (если вы не укажете точную версию или другую версию с синтаксисом ~>).

Затем, когда вы добавляете новые гемы в ваш Gemfile, он все равно использует эту версию, если вы не используете команду bundle update devise. Так что, если вы не обновляете устройство вручную, оно всегда будет использовать один и тот же драгоценный камень.

Rvm будет повторно использовать тот же самый драгоценный камень, если он совместим со вторым Gemfile и , вы находитесь в том же gemset , иначе он установит вторую копию драгоценного камня devise.

Во избежание этого вы можете добавить общий драгоценный камень в набор @global, и они будут доступны всем вашим наборам.

В каждом случае это не должно быть проблемой, поскольку гем не использует много места на диске, а разные версии обрабатываются с помощью rvm / Gemfiles.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...