rails版本升级后旧版本开发的程序怎么办?
Monday, June 25th, 2007 我的有些rails应用是05年写的,有的是06年写的,现在都1.2.X了,新应用当然是用1.2写了。
那在同一台服务器上的不同版本怎么办?(有些1.1 or 0.X版本的在1.2上跑不起来了)
1.将应用update到1.2
rake rails:update
# Update both configs, scripts and public/javascripts from Rails
注意:routes.rb,database.yml,environment.rb会被覆盖哦。
这种方式可能要改一些地方才行,有时候也update不成功。
如果原来的跑的很好,有不想改,或者update不成功呢?
2.那就使用:
rake rails:freeze:edge
# Lock to latest Edge Rails or a specific revision with REVISION=X (ex: REVISION=4021) or a tag with TAG=Y (ex: TAG=rel_1-1-0)
REVISION是找不到了。就用TAG吧。
你可以在这里找到相应的版本:
http://dev.rubyonrails.org/browser/branches
0.X,1.1.X的在1.1.6上基本跑的很好,建议使用这个版本:
rake rails:freeze:edge TAG=rel_1-1-6
(看checkout过程发现activerecord等模块是使用最新版本的)
这样就什么也不用改了。
详细说明参考:http://wiki.rubyonrails.org/rails/pages/EdgeRails
rake是个好东西,rails的Rakefile也定义了很多常用的命令,可以通过
rake –tasks
查看.

