我似乎找不到从命令行或rvm.beginrescueend.com识别最新版本的RVM的简单方法!?!
我目前每隔几天左右键入rvm get latest
来更新RVM。如果版本相同,RVM将通过下载和版本。不管更新过程。我希望能够首先“看到”是否有更新。
任何人都知道怎么做?我确定我错过了明显的......
答案 0 :(得分:14)
您可以使用这一个班轮来检查版本:
$ curl -sS https://api.github.com/repos/wayneeseguin/rvm/git/refs/tags | awk -F": |\"" '$2=="ref"{sub(/.*\//,"",$5); print $5}' | sort -V | tail -n 1
1.15.8
或纯红宝石衬里:
$ ruby -ropen-uri -rjson -e 'open("https://api.github.com/repos/wayneeseguin/rvm/git/refs/tags"){|r| puts JSON.parse(r.read).map{|l| l["ref"].gsub(/.*\//,"").split(".").map(&:to_i)}.sort.last.join(".") }'
1.15.8
但最简单的事情是:
$ curl https://raw.github.com/wayneeseguin/rvm/stable/VERSION
1.15.8
答案 1 :(得分:5)
像这样卷曲rvm存储库:
curl https://raw.githubusercontent.com/rvm/rvm/master/VERSION
答案 2 :(得分:1)
好的,魔术:) 将其放入.rb文件:)
require 'open-uri'
require 'openssl'
regex = Regexp.new(/data-name="([0-9]+).([0-9]+).([0-9]+)"/)
f=open("https://github.com/wayneeseguin/rvm",:ssl_verify_mode => OpenSSL::SSL::VERIFY_NONE)
v = []
f.each_line do |l|
regex.match(l) {|m| v << {:full => m[0], :major => m[1].to_i, :minor => m[2].to_i, :inc => m[3].to_i} }
end
v.sort_by{|m| [m[:major],m[:minor],m[:inc]] }
v=v.first
puts "#{v[:major]}.#{v[:minor]}.#{v[:inc]}"
我不知道为什么我这样做。
答案 3 :(得分:0)
我用过:
$ rvm get head && rvm reload
它跑得很快,似乎完成了这项工作。我在前一周安装了rvm,rvm 1.15.5,并且已经有一个更新的版本,rvm 1.15.8。
建议:
Michael Hartl撰写的Ruby on Rails教程 http://ruby.railstutorial.org/ruby-on-rails-tutorial-book#sec-install_ruby