2010-12-28 28 views
1

Ich begann vor ein paar Monaten RoR Entwicklung und Mac neu zu sein ...meine RoR Entwicklungsumgebung Bereinigen

Die Zeit vergeht, und jetzt habe ich eine Menge verschiedene Versionen von Ruby, Schienen Versionen und Edelsteine ​​Versionen überall entfernt. ..... Und zur Zeit habe ich rvm installiert und die Dinge wurden sogar am schlimmsten, alle Dinge sind durcheinander!

Und so begann ich, alle Dinge zu reinigen und rvm wieder zu verwenden! Ich möchte alle Edelsteine, alle Rails und alle Ruby-Versionen deinstallieren, außer dem Standard-System des Systems (das sehr alte, das mit dem Mac geboren wurde).

Oder irgendwelche anderen besseren Lösungen oder Vorschläge? Bitte helfen Sie!

gibt es einige Informationen, die ich denke, nützlich sein wird:

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) 

======

Ich habe sudo rvm implode und sudo rm -rf ~/.rvm, so dass keine rvm jetzt lief.

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 
+0

Fügen Sie bitte die Ausgabe von 'rvm info' und' gem \ env' hinzu. –

+0

Aktualisiert, danke – PeterWong

Antwort

2

Wow, äh ... du bist ... ah ... beschäftigt. Der Versuch, Dinge zu bereinigen, wird eine Herausforderung sein und wird wahrscheinlich mehr sein, als wir helfen können, es sei denn, wir sehen uns viele Systemverzeichnisse und die Konfiguration Ihres Kontos an.

Meine erste Frage ist: Haben Sie Änderungen am Standard-Ruby des Systems in/usr/bin/ruby ​​vorgenommen? Wenn ja, würde ich persönlich nur die Daten sichern, die ich behalten möchte und die Festplatte löschen und neu beginnen.

Haben Sie gem clean ausgeführt? Das wird eine Menge Müll entfernen, aber wird wahrscheinlich auch viele Fragen über Abhängigkeiten aufwerfen, und wenn das erledigt ist, könnte es Dinge kaputt oder unverändert lassen - es ist schwer mit dieser Anzahl von Edelsteinen und Revisionen zu sagen, was passieren wird.

Sie gem zwingen können, alle Edelsteine ​​wie mit etwas zu deinstallieren:

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

Nur sicher sein, die Ruby-Version ausgeführt wird, weil gem gegen den aktuell laufenden Rubin fungiert. Verwenden Sie which ruby, um herauszufinden.

+0

Ich weiß nicht, dass ich den Rubin des Systems geändert habe. Ich habe "gem clean" gespielt und viele alte Versionen von Gems entfernt. Aber ich möchte alle entfernen und dann neu installieren ... – PeterWong

+0

Bin ich sicher, nur sudo rm -rf alle Ruby außer dem in/usr/bin/Ruby? – PeterWong

+0

Ja, wenn Sie es sehr methodisch und sorgfältig tun. Du könntest dein gesamtes Laufwerk auch mit diesem Befehl löschen, was einer dieser "Oh sh * t" -Momente wäre. –