【问题标题】:Clean up my RoR development environment清理我的 RoR 开发环境
【发布时间】:2011-05-31 10:21:33
【问题描述】:

几个月前我开始了 RoR 开发,刚接触 Mac...

时间过得真快,现在我到处都有很多不同的 ruby​​ 版本、rails 版本和 gems 版本……而现在我安装了 rvm,事情变得更糟,所有事情都一团糟!

于是我开始想清理所有东西并再次使用 rvm!我想卸载所有 gem、所有 rails 和所有 ruby​​ 版本,除了系统的默认版本(Mac 自带的非常旧的版本)。

或任何其他更好的解决方案或建议!?请帮忙!

有一些我认为有用的信息:

which -a ruby

/opt/local/bin/ruby
/opt/local/bin/ruby
/usr/local/bin/ruby
/usr/bin/ruby
/usr/local/bin/ruby

which -a rails

/usr/local/bin/rails
/usr/bin/rails
/usr/local/bin/rails

which -a compass # simliar for rspec and many other gems

/usr/local/bin/compass
/usr/local/bin/compass

gem list

*** LOCAL GEMS ***

abstract (1.0.0)
actionmailer (3.0.3, 3.0.1, 3.0.0, 3.0.0.rc2, 2.3.9, 2.3.5, 2.3.4)
actionpack (3.0.3, 3.0.1, 3.0.0, 3.0.0.rc2, 2.3.9, 2.3.5, 2.3.4)
activemodel (3.0.3, 3.0.1, 3.0.0, 3.0.0.rc2)
activerecord (3.0.3, 3.0.1, 3.0.0, 3.0.0.rc2, 2.3.9, 2.3.5, 2.3.4)
activeresource (3.0.3, 3.0.1, 3.0.0, 3.0.0.rc2, 2.3.9, 2.3.5, 2.3.4)
activesupport (3.0.3, 3.0.1, 3.0.0, 3.0.0.rc2, 2.3.9, 2.3.5, 2.3.4)
addressable (2.2.2)
arel (2.0.6, 1.0.1, 1.0.0.rc1)
authlogic (2.1.6, 2.1.3)
aws-s3 (0.6.2)
base32 (0.1.2)
block_helpers (0.3.3)
bluecloth (2.0.9)
bowline (0.9.4)
bowline-bundler (0.0.4)
bson (1.1.2)
builder (2.1.2)
bundler (1.0.2, 1.0.0)
compass (0.10.6)
crack (0.1.7)
devise (1.1.3)
diff-lcs (1.1.2)
differ (0.1.1)
dynamic_form (1.1.3)
engineyard (1.3.1)
engineyard-serverside-adapter (1.3.3)
erubis (2.6.6)
escape (0.0.4)
extlib (0.9.15)
facebooker (1.0.75)
faker (0.3.1)
faraday (0.5.3, 0.5.2)
fast_gettext (0.5.10, 0.4.17)
fastercsv (1.5.3)
fastthread (1.0.7)
ffi (0.6.3)
formatize (1.0.1)
formtastic (1.1.0, 1.0.1)
gemcutter (0.5.0)
gettext (2.1.0)
git (1.2.5)
gosu (0.7.25 universal-darwin)
haml (3.0.24, 3.0.23, 3.0.22, 3.0.21, 3.0.18)
haml-rails (0.3.4)
heroku (1.10.13, 1.9.13)
highline (1.5.2)
hirb (0.3.4, 0.3.3)
hpricot (0.8.2)
i18n (0.5.0, 0.4.2, 0.4.1, 0.3.7)
jeweler (1.4.0)
json (1.4.6)
json_pure (1.4.3)
linkedin (0.1.8)
locale (2.0.5)
mail (2.2.12, 2.2.11, 2.2.10, 2.2.9, 2.2.7, 2.2.6.1)
memcache-client (1.8.5)
meta_search (0.9.8, 0.9.7.2, 0.9.7.1, 0.9.6, 0.9.4)
mime-types (1.16)
mongo (1.1.2)
mongoid (2.0.0.beta.20)
multi_json (0.0.5)
multipart-post (1.0.1)
mysql (2.8.1)
mysql2 (0.2.6, 0.2.4, 0.2.3)
net-ldap (0.1.1)
nice-ffi (0.4)
nokogiri (1.4.4, 1.4.2)
oa-basic (0.1.6)
oa-core (0.1.6)
oa-enterprise (0.1.6)
oa-oauth (0.1.6)
oa-openid (0.1.6)
oauth (0.4.4, 0.4.3, 0.4.1)
oauth-plugin (0.4.0.pre1)
oauth2 (0.1.0)
omniauth (0.1.6)
paperclip (2.3.6, 2.3.4, 2.3.1.1)
passenger (2.2.12)
polyglot (0.3.1)
pyu-ruby-sasl (0.0.3.2)
querybuilder (0.9.2, 0.5.9)
rack (1.2.1, 1.1.0, 1.0.1)
rack-cache (0.5.3)
rack-cache-purge (0.0.2, 0.0.1)
rack-mount (0.6.13)
rack-openid (1.2.0)
rack-test (0.5.6, 0.5.4)
railroady (0.11.2)
rails (3.0.3, 3.0.1, 3.0.0, 3.0.0.rc2, 2.3.9, 2.3.5, 2.3.4)
railties (3.0.3, 3.0.1, 3.0.0, 3.0.0.rc2)
rake (0.8.7)
RedCloth (3.0.4)
rest-client (1.6.1)
roxml (3.1.5)
rscribd (1.2.0)
rspec (2.3.0, 2.2.0, 2.1.0, 2.0.1)
rspec-core (2.3.0, 2.2.1, 2.1.0, 2.0.1)
rspec-expectations (2.3.0, 2.2.0, 2.1.0, 2.0.1)
rspec-mocks (2.3.0, 2.2.0, 2.1.0, 2.0.1)
rspec-rails (2.3.0, 2.2.0, 2.1.0, 2.0.1)
ruby-hmac (0.4.0)
ruby-mysql (2.9.3)
ruby-ole (1.2.10.1)
ruby-openid (2.1.8)
ruby-openid-apps-discovery (1.2.0)
ruby-recaptcha (1.0.2, 1.0.0)
ruby-sdl-ffi (0.3)
ruby-termios (0.9.6)
ruby_parser (2.0.5)
rubyforge (2.0.4)
rubygame (2.6.4)
rubygems-update (1.3.7)
rubyless (0.7.0, 0.6.0, 0.3.5)
rubyntlm (0.1.1)
rubyzip2 (2.0.1)
scribd_fu (2.0.6)
searchlogic (2.4.27, 2.4.23)
sequel (3.16.0, 3.15.0, 3.13.0)
sexp_processor (3.0.5)
shoulda (2.11.3)
sinatra (1.0)
slim (0.8.0)
slim-rails (0.1.2)
spreadsheet (0.6.4.1)
sqlite3-ruby (1.3.2, 1.3.1)
ssl_requirement (0.1.0)
subdomain-fu (1.0.0.beta2, 0.5.4)
supermodel (0.1.4)
syntax (1.0.0)
taps (0.3.13, 0.3.11)
templater (1.0.0)
temple (0.1.6)
text-format (1.0.0)
text-hyphen (1.0.0)
thor (0.14.6, 0.14.4, 0.14.3, 0.14.1, 0.14.0)
tilt (1.1)
treetop (1.4.9, 1.4.8)
tzinfo (0.3.23)
uuidtools (2.1.1, 2.0.0)
validates_timeliness (3.0.0.beta.4, 2.3.1)
warden (0.10.7)
will_paginate (3.0.pre2, 2.3.15, 2.3.14)
xml-simple (1.0.12)
ya2yaml (0.30)
yajl-ruby (0.7.8, 0.7.7)
yamltest (0.7.0)
zena (0.16.9, 0.16.8)

======

我已经跑过sudo rvm implode 和sudo rm -rf ~/.rvm,所以现在没有 rvm。

gem env

RubyGems Environment:
  - RUBYGEMS VERSION: 1.3.7
  - RUBY VERSION: 1.8.7 (2009-06-12 patchlevel 174) [i686-darwin10.2.0]
  - INSTALLATION DIRECTORY: /usr/local/lib/ruby/gems/1.8
  - RUBY EXECUTABLE: /usr/local/bin/ruby
  - EXECUTABLE DIRECTORY: /usr/local/bin
  - RUBYGEMS PLATFORMS:
    - ruby
    - x86-darwin-10
  - GEM PATHS:
     - /usr/local/lib/ruby/gems/1.8
     - /Users/peter/.gem/ruby/1.8
  - GEM CONFIGURATION:
     - :update_sources => true
     - :verbose => true
     - :benchmark => false
     - :backtrace => false
     - :bulk_threshold => 1000
     - :sources => ["http://rubygems.org/", "http://gems.github.com"]
  - REMOTE SOURCES:
     - http://rubygems.org/
     - http://gems.github.com

===

ls -al /usr/local/lib/

total 5704
drwxr-xr-x  7 root  wheel      238 Jun  1  2010 .
drwxr-xr-x  9 root  wheel      306 Dec 15 16:20 ..
-rw-r--r--  1 root  wheel  1717208 Jun  1  2010 libruby-static.a
-rwxr-xr-x  1 root  wheel  1191880 Jun  1  2010 libruby.1.8.7.dylib
lrwxrwxrwx  1 root  wheel       19 Jun  1  2010 libruby.1.8.dylib -> libruby.1.8.7.dylib
lrwxrwxrwx  1 root  wheel       19 Jun  1  2010 libruby.dylib -> libruby.1.8.7.dylib
drwxr-xr-x  6 root  wheel      204 Jun  1  2010 ruby

【问题讨论】:

  • 请添加rvm info和gem env的输出。

标签: ruby macos rubygems uninstallation rvm


【解决方案1】:

哇,嗯……你一直……啊……忙。尝试清理内容将是一项挑战,而且可能超出我们的帮助范围,除非我们可以查看大量系统目录和您的帐户配置。

我的第一个问题是:您是否对系统默认的 /usr/bin/ruby 中的 Ruby 进行了任何更改?如果是这样,我个人只是备份我想要保留的数据并擦除驱动器并重新开始。

你跑gem clean了吗?这将删除一堆垃圾,但也可能会引发很多关于依赖关系的问题,并且一旦完成,可能会导致事情被破坏或保持不变 - 很难说这么多的 gem 和修订会发生什么。

您可以强制 gem 使用以下命令卸载所有 gem:

gem list | awk '{print $1}' | xargs gem --all --quiet uninstall

只要确定运行的是哪个 Ruby 版本,因为 gem 会针对当前运行的 Ruby 进行操作。使用which ruby 找出答案。

【讨论】:

  • 我没有改变系统的红宝石。我跑了gem clean 并删除了很多宝石的旧版本。但我想删除所有这些,然后重新安装...
  • 我可以安全地使用 sudo rm -rf 除了 /usr/bin/ruby 中的所有红宝石吗?
  • 是的,如果你做的非常有条不紊和仔细。您也可以使用该命令擦除整个驱动器,这将是那些“哦 sh*t”时刻之一。
  • 查看您的PATH 并将其清理干净。还要确保/usr/local/bin 没有软链接或您安装的 Ruby 的残余。您必须费力地清除剩余部分,这就是为什么我说它可能更容易擦拭和重新安装。
  • 强制卸载的cmd出现以下错误:ERROR: Invalid option: --all. See 'gem --help'.
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2023-03-16
  • 1970-01-01
  • 2020-08-22
  • 2016-10-06
  • 1970-01-01
  • 1970-01-01
  • 2023-03-13
相关资源
最近更新 更多