Как вы понижаете рейтинг Rubygems?


99

У меня установлен rubygems 1.3.1, но я хочу вернуться к 1.2.0. Какая команда понижает рейтинг Rubygems?


Есть ли какая-то конкретная причина, по которой вам нужно перейти на более раннюю версию (возможно, из-за поведения размещения драгоценных камней в ~ / .gems, когда вы забываете sudo)?
Джарин Удом,

Это может быть причиной: stackoverflow.com/questions/4859600/…
Рамон Тайаг 01

Ответы:


39

Обновлено ноябрь 2011 г .: Теперь, когда RVM отсутствует, попробуйте запустить rvm install rubygems <version>.


36
Эх, гораздо лучше sudo gem update --system 1.4.2илиrvm install rubygems 1.4.2
MRM

198

Это сработало для меня при переходе с 1.5.2 на 1.4.2 из-за старой версии rails:

sudo gem update --system 1.4.2

Дополнительная информация о понижении / обновлении rubygems: https://github.com/rubygems/rubygems/blob/master/UPGRADING.md


1
Спасибо! Это сработало для меня. У вас есть старый проект Rails 2.2.2, который жаловался без этого. Я до сих пор не знаю, почему на самом деле (если у кого-то есть подробности, мне было бы любопытно), но, по крайней мере, сейчас это работает.
Брайан Армстронг,

1
@BrianArmstrong. В 2.3.x тоже есть ошибка, которая уже исправлена ​​в 2-3-stableветке rails (см. Ссылку ). Возможно, это исправление будет доступно в следующем выпуске 2.2.x.
pseidemann

Это кажется самым надежным способом.
Marnen Laibow-Koser 06

правда ли это только для определенного набора драгоценных камней? или мне нужно будет переключаться между rubygems, если я хочу переключаться между разработкой rails 2 и rails 3?
Аарона

@DJTripleThreat см stackoverflow.com/a/7700388/616310 для rvm. при использовании rbenvдолжно быть достаточно, чтобы скопировать установку ruby. когда вы не используете, rbenvи rvmя бы посоветовал вам использовать, rbenvпотому что в противном случае вам нужно будет
перемещаться

25

Если вы используете RVM, вы можете сделать это, чтобы удалить текущие рубиновые драгоценные камни, а затем обновить / понизить рубиновые камни:

rvm install rubygems 1.4.2

просто погуглил это, чтобы попытаться избавиться от тонны предупреждений об устаревании, вызванных недавними обновлениями rubygems, избавил меня от множества хлопот, спасибо :)
Макс Уильямс

15

Это просто сработало для меня на OSX, чтобы вернуться с 1.5.0 на 1.4.2.

sudo gem uninstall -v '1.5.0' rubygems-update
sudo gem update --system --local

2

У меня была аналогичная проблема в старом стеке Rails 3. При возникновении проблем такого типа я рекомендую перейти на рабочий сервер, на котором в настоящее время работает приложение, и проверить, какую версию rubygems оно использует:

gem -v

Для меня он использовал 1.8.24. Итак, все, что мне нужно было сделать, это понизить версию моих текущих rubygems, которые были сгенерированы из «rvm install 1.9.3», когда я установил старый ruby ​​для этого приложения. Я выполнил следующую команду:

 $ rvm install rubygems 1.8.24 --force

И это сработало. Примечание. Я использую Ubuntu 14.04, и сервер, который я использую, также является Ubuntu.


Пришлось добавить --force, если я хотел понизить версию, иначе rvm не продолжит установку
Кристиан

-1

Я использовал эту команду, чтобы вернуться к версии драгоценного камня, которая нужна моей рубиновой версии:

rvm rubygems current

Если выдает ошибки контрольной суммы, попробуйте

rvm rubygems current --verify-downloads 1

Это помогло мне.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.