如何从gem远程源中删除远程源

时间:2009-11-04 08:56:21

标签: ruby gem rubygems

我已将gemcutter.org添加到我的Rubygems源代码中,现在我不知道如何删除它。

$ gem sources
*** CURRENT SOURCES ***

http://gemcutter.org
http://gems.rubyforge.org/

3 个答案:

答案 0 :(得分:46)

$ gem sources -r http://gemcutter.org
http://gemcutter.org removed from sources

$ gem sources
*** CURRENT SOURCES ***

http://gems.rubyforge.org/

答案 1 :(得分:3)

通常,您可以使用

找到语法
gem help *command*

因此,这显示了您需要的选项:

gem help sources

答案 2 :(得分:1)

但是,如果问题是默认源导致gem安装挂起在非连接系统上怎么办? (你认为这是不可能的?!?)如果你运行最受欢迎的答案所提供的命令,就会发生这种情况:

# gem sources -r https://rubygems.org
source https://rubygems.org not present in cache

然后要处理这种情况,你必须修改源 cringe

sed -i '/[[:space:]]def self\.default_sources/a return []'   \
  $RUBYGEMS_DIR/rubygems/defaults.rb

这会在返回“默认源”的方法之后添加一行代码,即return []以返回空数组。运行gem environment,您将看到没有讨厌的远程源。现在您可以返回并撤消sed命令,或手动添加rubygems repo或其他任何内容。

编辑:澄清,概括。