Як ви знижуєте рубігеми?


99

У мене встановлені rubygems 1.3.1, але я хочу повернутися до 1.2.0. Яка команда зменшити рубігми?


Чи є якась конкретна причина, чому вам потрібно знизити ціну (можливо, через поведінку розміщення дорогоцінних каменів у ~ / .gems, коли ви забудете судо)?
Ярін Удом

Це буде причина , чому: stackoverflow.com/questions/4859600 / ...
Рамон Tayag

Відповіді:


39

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


36
Ех, набагато краще sudo gem update --system 1.4.2абоrvm install rubygems 1.4.2
мрм

198

Це працювало для мене при пониженні з 1.5.2 до 1.4.2 через стару версію рейок:

sudo gem update --system 1.4.2

Більше інформації про зменшення / оновлення рубігем: https://github.com/rubygems/rubygems/blob/master/UPGRADING.md


1
Дякую! Це працювало для мене. Майте старий проект Rails 2.2.2, який скаржився без цього. Я досі не знаю, чому насправді (якщо хтось має детальну інформацію про це, мені було б цікаво), але принаймні це працює зараз.
Брайан Армстронг

1
@BrianArmstrong Також є помилка в 2.3.x, яка вже виправлена ​​у 2-3-stableгілці рейки (див. Посилання ). Можливо, це виправлення з’явиться у наступному випуску 2.2.x.
pseidemann

Це здається найнадійнішим способом.
Marnen Laibow-Koser

однак це робить це тільки для певного дорогоцінного набору? чи мені потрібно буде переходити між рубігемами, якщо я хочу переключитися між розвитком рейки 2 та рейки 3?
aarona

@DJTripleThreat см stackoverflow.com/a/7700388/616310 для rvm. при використанні rbenvйого повинно вистачити для копіювання установки рубіну. коли ви не використовуєте rbenvані те, що rvmя б пропонував вам використовувати, rbenvбо в іншому випадку вам потрібно повертатися вперед і назад із системою ruby
pseidemann

25

Якщо ви використовуєте RVM, ви можете це зробити, щоб видалити поточні дорогоцінні камені, а потім оновити / зменшити рубігми:

rvm install rubygems 1.4.2

просто погуглили це, щоб спробувати позбутися від тонни попереджень про депресію, спричинених останніми оновленнями рубігем, врятувало мені багато клопоту, дякую :)
Макс Вільямс

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. Отже, все, що мені потрібно було зробити, - це зменшити рівень моїх поточних рубігем, створених з "rvm install 1.9.3", коли я встановив старий рубін для цього додатка. Я запустив таку команду:

 $ rvm install rubygems 1.8.24 --force

І це спрацювало. Примітка: У мене працює Ubuntu 14.04, а сервер, який я використовую, також є Ubuntu.


Довелося додати --force, якщо б я хотів знизити версію, інакше rvm не продовжував би встановити
Christian

-1

Я використовував цю команду, щоб повернутися до версії самоцвіту, яка потрібна моїй рубіновій версії:

rvm rubygems current

Якщо це дає помилки контрольної суми, спробуйте

rvm rubygems current --verify-downloads 1

Це зробило для мене трюк.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.