最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Ruby版本管理工具RVM的安裝和使用教程

 更新時間:2015年08月03日 09:38:15   投稿:goldensun  
這篇文章主要介紹了Ruby版本管理工具RVM的安裝和使用教程,本文示例基于類Unix的系統(tǒng)環(huán)境,需要的朋友可以參考下

RVM 是一個命令行工具,可以提供一個便捷的多版本 Ruby 環(huán)境的管理和切換。

https://rvm.io/

如果你打算學(xué)習(xí) Ruby / Rails, RVM 是必不可少的工具之一。

這里所有的命令都是再用戶權(quán)限下操作的,任何命令最好都不要用 sudo.
RVM 安裝

$ curl -L get.rvm.io | bash -s stable
$ source ~/.bashrc
$ source ~/.bash_profile

修改 RVM 的 Ruby 安裝源到國內(nèi)的 淘寶鏡像服務(wù)器,這樣能提高安裝速度

$ sed -i -e 's/ftp\.ruby-lang\.org\/pub\/ruby/ruby\.taobao\.org\/mirrors\/ruby/g' ~/.rvm/config/db

Ruby 的安裝與切換

列出已知的 Ruby 版本

rvm list known

安裝一個 Ruby 版本

rvm install 2.2.0

這里安裝了最新的 2.2.0, rvm list known 列表里面的都可以拿來安裝。

切換 Ruby 版本

rvm use 2.2.0

如果想設(shè)置為默認(rèn)版本,這樣一來以后新打開的控制臺默認(rèn)的 Ruby 就是這個版本

rvm use 2.2.0 --default 

查詢已經(jīng)安裝的ruby

rvm list

卸載一個已安裝版本

rvm remove 1.8.7

gemset 的使用

RVM 不僅可以提供一個多 Ruby 版本共存的環(huán)境,還可以根據(jù)項目管理不同的 gemset.

gemset 可以理解為是一個獨(dú)立的虛擬 Gem 環(huán)境,每一個 gemset 都是相互獨(dú)立的。

比如你有兩個項目,一個是 Rails 2.3 一個是 rails3. gemset 可以幫你便捷的建立兩套 Gem 開發(fā)環(huán)境,并且方便的切換。

gemset 是附加在 Ruby 語言版本下面的,例如你用了 1.9.2, 建立了一個叫 rails3 的 gemset,當(dāng)切換到 1.8.7 的時候,rails3 這個 gemset 并不存在。
建立 gemset

rvm use 1.8.7
rvm gemset create rails23

然后可以設(shè)定已建立的 gemset 做為當(dāng)前環(huán)境
use 可以用來切換語言或者 gemset

前提是他們已經(jīng)被安裝(或者建立)。并可以在 list 命令中看到。

rvm use 1.8.7
rvm use 1.8.7@rails23

然后所有安裝的 Gem 都是安裝在這個 gemset 之下。
列出當(dāng)前 Ruby 的 gemset

rvm gemset list

清空 gemset 中的 Gem

如果你想清空一個 gemset 的所有 Gem, 想重新安裝所有 Gem,可以這樣

rvm gemset empty 1.8.7@rails23

刪除一個 gemset

rvm gemset delete rails2-3

項目自動加載 gemset

RVM 還可以自動加載 gemset。
例如我們有一個 Rails 3.1.3 項目,需要 1.9.3 版本 Ruby,整個流程可以這樣。

rvm install 1.9.3
rvm use 1.9.3
rvm gemset create rails313
rvm use 1.9.3@rails313

下面進(jìn)入到項目目錄,建立一個 .rvmrc 文件。

在這個文件里可以很簡單的加一個命令:

rvm use 1.9.3@rails313

然后無論你當(dāng)前 Ruby 設(shè)置是什么,cd 到這個項目的時候,RVM 會幫你加載 Ruby 1.9.3 和 rails313 gemset.
使用 RVM 快速部署 Nginx + Passenger

首先安裝 Passenger

gem install passenger

然后使用 passenger-install-nginx-module 來安裝 Nginx 和部署。

因為這一步需要 root 權(quán)限(因為要編譯 Nginx)可以用 rvmsudo 這個東西(這個東西真是個好東西)。

rvmsudo passenger-install-nginx-module

然后會讓你選擇是下載 Nginx 源碼自動編譯安裝,還是自己選擇 Nginx 源碼位置。

選擇 Nginx 手動安裝的可以添加別的編譯參數(shù),方便自定義編譯 Nginx。

然后一路下載安裝。默認(rèn)的安裝位置為 /opt/nginx.

然后看看 nginx.conf,都給你配置好了,只需要加上 root 位置(yourapp/public)就可以了。

當(dāng)我第一次安裝完成了,就驚呼,這也太爽了吧。

PS: RVM 是個好東西,做的很智能,(大部分)操作失敗后會告訴你原因,然后告訴你需要安裝哪些Lib等等,非常適合新手老手使用,簡直是居家旅行必備良藥。

相關(guān)文章

  • Ruby中的Proc類及Proc的類方法Proc.new的使用解析

    Ruby中的Proc類及Proc的類方法Proc.new的使用解析

    用Proc類可以用Proc.new來創(chuàng)建一個Proc類,進(jìn)而來操作塊,這里我們就來進(jìn)行Ruby中的Proc類及Proc的類方法Proc.new的使用解析.
    2016-05-05
  • Ruby中的Hash哈希類型基本操作方法小結(jié)

    Ruby中的Hash哈希類型基本操作方法小結(jié)

    Hash類型在Ruby中就相當(dāng)于Python的字典,是一個鍵值對應(yīng)的集合類型,這里就來整理一下Ruby中的Hash哈希類型基本操作方法小結(jié):
    2016-06-06
  • Ruby中的反射(Reflection)應(yīng)用實例

    Ruby中的反射(Reflection)應(yīng)用實例

    這篇文章主要介紹了Ruby中的反射(Reflection)應(yīng)用實例,實現(xiàn)通過一個類名字符串構(gòu)造一個類對象和訪問成員變量和私有方法 ,需要的朋友可以參考下
    2014-06-06
  • Ruby 多線程的潛力和弱點(diǎn)分析

    Ruby 多線程的潛力和弱點(diǎn)分析

    這篇文章主要介紹了Ruby 多線程的潛力和弱點(diǎn)分析,本文講解了Ruby 多線程和 IO Block、Ruby GIL 的影響、JRuby 去除了 GIL、Ruby 多線程總結(jié)等內(nèi)容,需要的朋友可以參考下
    2015-03-03
  • Ruby使用GDBM操作DBM數(shù)據(jù)存儲方法實例詳解

    Ruby使用GDBM操作DBM數(shù)據(jù)存儲方法實例詳解

    這篇文章主要介紹了Ruby使用GDBM操作DBM數(shù)據(jù)存儲方法實例詳解,需要的朋友可以參考下
    2022-04-04
  • Ruby初學(xué)筆記之Hello World

    Ruby初學(xué)筆記之Hello World

    這篇文章主要介紹了Ruby初學(xué)筆記之Hello World,本文是一篇Ruby自學(xué)筆記,本文分別用普通方法、函數(shù)、類輸出Hello World,從一個一個的例子中了解Ruby編程,需要的朋友可以參考下
    2015-06-06
  • Ruby基礎(chǔ)語法初探

    Ruby基礎(chǔ)語法初探

    這篇文章主要介紹了Ruby基礎(chǔ)語法,第一次看到Ruby代碼的朋友不知會不會被Ruby的語法吸引:) 需要的朋友可以參考下
    2015-07-07
  • 詳解Ruby當(dāng)中的算數(shù)運(yùn)算

    詳解Ruby當(dāng)中的算數(shù)運(yùn)算

    這篇文章主要介紹了詳解Ruby當(dāng)中的算數(shù)運(yùn)算,是Ruby學(xué)習(xí)當(dāng)中的基礎(chǔ)知識,需要的朋友可以參考下
    2015-05-05
  • Ruby中使用mechanize批量下載校內(nèi)網(wǎng)相冊照片

    Ruby中使用mechanize批量下載校內(nèi)網(wǎng)相冊照片

    這篇文章主要介紹了Ruby中使用mechanize批量下載校內(nèi)網(wǎng)相冊照片,本文直接給出實現(xiàn)代碼,需要的朋友可以參考下
    2015-01-01
  • Ruby On Rails中如何避免N+1問題

    Ruby On Rails中如何避免N+1問題

    select語句的數(shù)目太多,需要頻繁的訪問數(shù)據(jù)庫,會影響檢索性能。如果需要查詢n個Customer對象,那么必須執(zhí)行n+1次select查詢語句。這就是經(jīng)典的n+1次select查詢問題。
    2014-07-07

最新評論

固镇县| 平湖市| 丹凤县| 瓦房店市| 北川| 石首市| 门头沟区| 洱源县| 阳曲县| 库尔勒市| 荣昌县| 共和县| 海阳市| 墨竹工卡县| 衡阳县| 辽阳县| 博罗县| 陵水| 靖江市| 贺州市| 长葛市| 平果县| 通江县| 红河县| 城固县| 乌什县| 鄂温| 阜城县| 尚义县| 杨浦区| 德惠市| 滁州市| 蛟河市| 曲沃县| 扎赉特旗| 黑山县| 宿迁市| 深泽县| 东丰县| 滦平县| 军事|