Как использовать несколько путей к пакетам в Ruby on Rails (bundler) - PullRequest
1 голос
/ 13 августа 2011

Я использую несколько драгоценных камней для интерактивности с моей базой данных и для облегчения нумерации страниц. После развертывания моего приложения на моем сервере оно автоматически выполнит bundle install, чтобы установить эти гемы, если они еще не установлены. Это полезно при развертывании обновления кодовой базы, включая новый гем.

Однако есть один драгоценный камень (will_paginate), в который я внес небольшое изменение (чтобы он всегда отображал, на какой странице вы находитесь, независимо от общего количества страниц).

Поэтому я использовал bundle install --local --path vendor на своем локальном компьютере (OS X Lion), чтобы я мог легко редактировать их (для каждого приложения, а не для всей системы).

Из-за проблем с зависимостями я не могу просто скопировать папку vendor на мой веб-сервер. Поэтому я решил добавить еще одно правило в мой .gitignore -файл:

vendor

Поскольку это заставило мой настроенный will_paginate -гем не загружаться, я выполнил другую команду:

git add -f vendor/ruby/1.8/gems/will_paginate

Теперь, когда я нажимаю, единственным драгоценным камнем в папке vendor на моем веб-сервере является will_paginate, и это здорово.

Тем не менее, он не загружается, так как он не находится в пути пакета.


Я уже пытался создать файл с именем .bundle/config и добавить в него следующее:

---
BUNDLE_PATH: vendor

Я также попытался добавить BUNDLE_DISABLE_SHARED_GEMS: "0", но, используя это, bundle check говорит, что в нем отсутствуют общие гемы.


У меня вопрос, как я могу добавить путь к пакету vendor и откат к общесистемному gem -path.

...