什么是gemset?为什么要安装gemset?
好吧,问这两个问题的时候,我自己也不知道,先问问度爷吧,不行再问问谷妈。
gemset是为了创建不同的gem环境。
gemset可以理解为是一个独立的虚拟gem环境,每一个gemset都是相互独立的。
比如你有两个项目,一个是rails 2.3 一个是 rails 3. gemset可以帮你便捷的建立两套gem开发环境,并且方便的切换。
gemset是附加在ruby语言版本下面的,例如你用了1.9.2, 建立了一个叫rails3的gemset,当切换到1.8.7的时候,rails3这个gemset并不存在。
好吧,上述的我木有看懂。不过,这里我找到了一篇博文,不错,共享出来。http://heikezhi.com/pilipala/,同样我也转载了,http://blog.csdn.net/alspwx/article/details/17022363
我问了下同事,他的理解是这样子:
gem就是ruby代码的包,然后gemset就是创建了一个文件夹,然后gem放置在里面。当我们使用不同的版本的时候,gemset自动帮我们切换到该版本对应的文件夹下。
我感觉很有道理啊。
rvm gemset create rails4
这不就是创建一个文件夹么
rvm use 2.0.0@rails4 --default
使用一下。
gem source -a http://ruby.taobao.org
gem source -r https://rubygems.org/
修改gem源
rvm gemset list 列出当前ruby的gemset
rvm gemset list 清空gemset中的gem
rvm gemset empty 2.0.0@rails4 你想清空一个gemset的所有gem,想重新安装所有gem
rvm gemset delete rails4 删除一个gemset
which gem 查找gem
use 可以用来切换语言,或者gemset,前提是他们已经被安装(或者建立)。并可以在list命令中看到。
rvm use 1.8.7
rvm use 1.8.7@rails23
rvm还可以自动加载gemset.
例如我们有一个rails3.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
下面进入到项目目录,建立一个.rvmrc文件。
在这个文件里可以很简单的加一个命令:
rvm use 1.9.3@rails313
然后无论你当前ruby设置是什么,cd到这个项目的时候,rvm会帮你加载 ruby 1.9.3和rails313 gemset
上面的命令式直接摘过来的,没有验证~~留着以后用吧
gem install rails --version=4.0.0
rails –v
输出安装版本
yum install mysql
yum install mysql-server
service mysqld start
mysql -u root
use mysql
update user set Password = PASSWORD('root') where user='root';
flush privileges;
chkconfig mysqld on
yum install mysql-devel
rails new demo
gem 'mysql2'
gem 'therubyracer'
进入demo的目录下, 增添这两句,因为我们将要使用mysql2数据库
bundle install
因为之前更改了gemfile,所以需要输入这条命令
gem install passenger
yum install libcurl curl yum install curl-devel
进入passenger的bin目录
./passenger-install-nginx-module