Как я могу сохранить свои Ruby Gems одинаковыми на нескольких серверах? - PullRequest
1 голос
/ 09 октября 2011

У меня есть несколько серверов для разработки, подготовки, тестирования и производства, и я хочу синхронизировать версии Ruby и Gem между различными компьютерами - как лучше всего это сделать?

Ответы [ 3 ]

2 голосов
/ 09 октября 2011

Если вы используете Rails 3, вы можете просто использовать Gemfile и bundler, и когда вы выполняете «обновление пакета» на любом компьютере, на котором вы находитесь, он автоматически установит правильные версии Gems для этого пользователя.account.

Вы должны использовать RVM для управления вашими версиями Ruby и держать Gems для разных версий Ruby отдельно друг от друга.

Вы также должны создать «gemset» для своего приложения Rails, чтобы убедиться, что установленные там Gems не модифицированы из другого приложения Rails, которое вы можете использовать или разрабатывать на той же машине.

http://beginrescueend.com/

http://railscasts.com/episodes/200-rails-3-beta-and-rvm

2 голосов
/ 09 октября 2011

rvm - лучший вариант для управления версиями ruby ​​

Однако я не уверен, что вы действительно хотите часто менять версию ruby.

bundler & Gemfile - отличный способ работать с версиями gem

Отслеживайте файлы Gemfile && Gemfile.lock в дереве git (или других cvs) и запускайте установку пакета при изменении

1 голос
/ 09 октября 2011

Вы также можете, если у вас больше гемов в наборе гемов, чем просто в вашем Gemfile, сделать

rvm gemset export gemsetname.gems

И тогда на другой машине вы сделаете

rvm gemset import gemsetname.gems

Вы даже можете сделать это как

rvm x.x.x@mygemset exec rvm gemset export mygemset.gems

, поэтому вам не нужно заходить прямо в ваш набор камней.А затем на новом компьютере

rvm --create use x.x.x@mygemset && rvm gemset import mygemset.gems

, который создаст и заполнит ваш набор драгоценных камней mygemset.

...