RVMによる複数バージョンRuby/Railsのインストール

4804 ワード

RVMによる複数バージョンRuby/Railsのインストール
2010-09-25 17:21:44
   RVM        Ruby/Rails (    )

Rails 3 RC           ,               。    2.3  ,Rails 3               。          ,          Rails 3      。        Ubuntu     Rails 3     ,    ,        Rails 2.3     。
Rails   Ruby                   ,   Ruby 1.9            ,      ,Rails              1.8.7    Ruby。    Rails 2    Ruby 1.8   ,  Ruby      1.9            ,       Ubuntu                   Ruby。
Rails 3           ,     Rails          Ruby     ,        Rails   Ruby              。(    Rails                       ,   Rails 3              。    。)
   Ruby 1.8   1.9     ,    Ubuntu                    ,             Ruby 1.8   Rails 2     Ruby 1.9   Rails 3(   ,Rails 3      Ruby 1.8.7,         ,       1.9    Ruby)。           Rails 2             ,          。
       ,             Shell     ——RVM(Ruby Version Manager),   ,                     Ruby,               。

                

	$sudo apt-get install curl bison build-essential git-core 
	$sudo apt-get install zlib1g-dev libssl-dev libreadline5-dev libxml2-dev 
   RVM
   RVM          ,    Wayne Seguin     GitHub            ,   Shell   ,             ,          ,       :
	$ bash < <( curl http://rvm.beginrescueend.com/releases/rvm-install-head )
(       :
	$ mkdir -p ~/.rvm/src/ && cd ~/.rvm/src && rm -rf ./rvm/ && git clone git://github.com/wayneeseguin/rvm.git && cd rvm && ./install
)
     ,           ,       .bashrc   。            ~/.bashrc   ,            :
	[ -z "$PS1" ] && return
      (    ,    ),   :
	if [ -n "$PS1" ]; then
               :
	fi
	[ -s "$HOME/.rvm/scripts/rvm" ] && source "$HOME/.rvm/scripts/rvm"
       .bashrc   ,    RVM     Shell     ,         Shell  (              )   RVM。             ,           RVM       :
	$ type rvm | head -n1
     “rvm is a function”/rvm     ,       。

  rvm (   )

	$ rvmupdate--head&&rvmreload
          Ruby
RVM      BSD      ,             Ruby  ,                 。      ,       C              :
	$ sudo apt-get install build-essential bison openssl libreadline5 libreadline-dev curl git-core zlib1g zlib1g-dev libssl-dev vim libsqlite3-0 libsqlite3-dev sqlite3 libreadline5-dev libreadline6-dev libxml2-dev git-core subversion autoconf
       Ruby  ,       1.8.7   1.9.2     :
	$ rvm install 1.8.7
	$ rvm install 1.9.2
   ,            ,        (      )。    ,                      Ruby   :
	$ rvm list
		rvm rubies
   		ruby-1.8.7-p299 [ i386 ]
   		ruby-1.9.2-rc2 [ i386 ]
       Ruby      
   Ruby     ,             ,    :
	$ rvm 1.9.2
  
	¥rvm 1.8.7
      Ruby        :
	$ ruby -v
		ruby 1.9.2dev (2010-07-11 revision 28618) [i686-linux]
            ,           ,          Ruby   。            ,    :
	$ rvm 1.8.7 --default
                          。
      RVM               Ruby,                   Ruby   :
	$ rvm system
  ,           Ruby       :
	$ rvm system –default
Gemsets
RVM             ,  Ruby     Gems       ,  Gemsets。      Bundler    ,   Bundler      Ruby     ,  RVM      Gems        。    ,      ,RVM     Bundler      。
    ,        Gemsets,     Rails 2.3     Rails 3   :
	$ rvm --create 1.8.7@rails2
	$ rvm --create use 1.9.2@rails3rc
    Gemsets  ,            。        ,   “@”  ,    Ruby    ,             。         Gemsets   Named Gem Sets,                 Ruby         。        “use”       ,       Named Gem Set。  ,         Named Gem Set      :
	$ rvm --default use 1.9.2@rails3rc
Named Gem Sets                  。            Gems(     Bundler),     Gems    1.9.2@rails3rc      ,    ,      1.8.7@rails2           Gems,     Gems             。

  gems 
  ruby           global gemset,       gemset,  rvm 1.8.7@gemset         gemset 
gems        ,  export/import/copy    
   Rails 3   
       Named Gem Set   1.9.2@rails3rc:
	$ rvm use 1.9.2@rails3rc
	  rails,   sudo 
            Rails:
	$ gem install rails –pre
(      derails         
	eg:$gem install rails -v 2.3.8
             $gem install rails (      ))
      “--pre”            ,        Rails 3 RC。  ,      ,   RVM       Gems         (  ~/.rvm/gems/ruby-1.9.2-rc2/gems/),            “sudo”。

      Rails 3   
         blog     ,
  Rails 3  ,            ,    :
	$ rails new blog
	$ cd blog
               Gemfile          Gems,        rails   sqlite3-ruby,           ,         :
	$ bundle install
(    mysql   ,       ,      
	eg:$rails blog -mysql
)
           rails,         sqlite3-ruby。 
         scaffold             ,    Rails 2.3       :
	$ rails generate scaffold Post title:string content:text
     ,     :
	$ rake db:migrate
       ,        :
	$ rails server
     ,     http://localhost:3000/posts,          。

    
         Ubuntu 10.04,           Mac,          。   RVM     ,               ,   Gemsets          。               。