本文章為菲利克斯貓(Felix.mao) 原創,轉載務必在明顯處注明:
原文連結:http://blog.csdn.net/maojudong/article/details/7920578
使用brew安裝ruby很友善,但缺點也是很明顯的,不能實時進行版本的切換
是以還是用 brew + rvm 或brew + rbenv比較好,以後文章會介紹
前言:我們不去删除系統自帶的ruby,gem,rails,而是自己重新安裝一套新的ruby,gem,rails ,通過更改PATH環境變量的方式來更新系統,
這樣做好處比較安全的,不會破壞原有的蘋果系統,又不耽誤我們用最新的ruby進行開發
好了,開始吧
1. brew update
2. brew install ruby
先看先原來的版本
3.設定環境變量
系統原始版本的/usr/bin/ruby 我們并不删除,隻是更改PATH環境變量,且将/usr/local/bin 添加到PATH的前面,這樣系統就會首先用
/usr/local/bin下面找到我們用brew安裝的ruby 1.9.3-p194 版本的了
到自己目錄下的.profile 或者 .bashrc 或者 .bash_profile 如我的位置
/Users/maojudong1984/.profile
用emacs或是vim打開 (更改前請備份好這個檔案,避免誤操作)
在檔案的末尾加入
# for brew install
export PATH=/usr/local/bin:$PATH
然後重新開機終端,就可以用到了新的ruby了
檢驗一下
$ ruby --version
ruby 1.9.3p194 (2012-04-20 revision 35410) [x86_64-darwin12.1.0]
$ which ruby
/usr/local/bin/ruby 注意:系統的是 /usr/bin/ruby
4. gem的自我更新
gem是随着ruby的安裝而安裝的,是以路徑和剛剛安裝ruby的路徑是相同過的,
此gem是自己安裝路徑中的gem (/usr/local/bin/gem),不是系統過的gem(/usr/bin/gem),我們這裡也不動系統的gem
gem的自我更新完成了,其實是将1.8.23 更新到了1.8.24版本
5. 用自己的gem安裝自己的rails(都是相對于系統過的/usr/bin/rails來說的)
我們自己的rails路徑 /usr/local/bin/rails---需要手動的建立連接配接 (系統的是/usr/bin/rails)
rails 是依賴與ruby編譯的,是以安裝的時候,用的哪個ruby,
rails 啟動服務的時候就是用的哪個ruby
6.
自己建立rails的 連接配接------這個方法不太好,因為以後更新版本不友善,每次都需要手動的建立連結,還是用rvm或是rbenv比較好
cd /usr/local/bin
ln -s /usr/local/Cellar/ruby/1.9.3-p194/bin/rails rails
檢測一下吧
$ which rails
/usr/local/bin/rails
7.
建立項目
cd ~
rails new CMSbrew1
cd CMSbrew1
rails s
浏覽器中輸入
http://0.0.0.0:3000
我們看到已經是我們剛剛安裝的ruby和自己的rails了
你也可以安裝其他的資料庫,如,mysql等和一些插件,不過還是建議用RVM或是RBENV進行安裝 ,後面會介紹
那麼如何恢複到系統預設的呢 ruby1.8.7的呢
方法也很簡單:
/Users/maojudong1984/.profile
用emacs或是vim打開 (更改前請備份好這個檔案,避免誤操作)
在檔案的末尾将
# for brew install
#export PATH=/usr/local/bin:$PATH
注釋掉
然後重新開機終端,就回到了ruby1.8.7了 注意PATH路徑中/usr/local/bin 不放到最前面就可以了
備注:
http://ftp.ruby-lang.org/pub/ruby/1.9/ ruby 的下載下傳位址
其它Homebrew指令:
brew list —列出已安裝的軟體
brew update —更新Homebrew
brew home *—用浏覽器打開
brew info *—顯示軟體内容資訊
brew deps * — 顯示包依賴
brew server * —啟動web伺服器,可以通過浏覽器通路http://localhost:4567/ 來同網頁來管理包
brew -h brew —幫助
本文章為菲利克斯貓(Felix.mao) 原創,轉載務必在明顯處注明:
原文連結:http://blog.csdn.net/maojudong/article/details/7920578