[英]How to find out which rails version an existing rails application is built on?
[英]How to find out which Ruby version an existing Rails project is based on?
我有一個現有的 Ruby on Rails 項目。 如何找出應用程序最初使用的是哪個版本的 Ruby?
編輯:總結這個線程:如果沒有特定於 ruby 版本的 gem,每個 Ruby 都應該工作。 你所有的帖子都很有幫助-謝謝。
如果沒有使用特定版本的 gem,我不確定是否可以確定開發期間使用的確切 ruby 版本。 在任何情況下,該應用程序都可能適用於多個版本,具體取決於它所具有的功能。
如果該應用程序具有全面的測試,您可以回過頭來找到所有測試都通過的最新版本。
檢查與使用的 Rails 版本兼容的 Ruby 的最低版本也有助於縮小范圍。
有些人使用 rvm 來管理他們項目中的 gemsets,在這種情況下.rvmrc 包含此信息,例如:“ruby-1.9.2-p180@projectname”
上面的答案分為兩種情況:
對於#2,上面的答案幾乎涵蓋了它。 你們很幸運。
對於#1,它更像是一次考古探險。 我相信 OP 處於這種情況,而我今天也處於類似情況。
查看 gem 版本可能是最好的方法。
這里有幾個可以借鑒的線索,供大家參考。 (為了那些將來偶然發現這篇文章的人的利益):
一般來說,如果您通讀列出差異的舊“從 1.8.7 到 1.9 的遷移指南”,您可以使用這些差異來幫助您找到線索。 看:
這個問題:
和這個airbnb博客文章:
http://nerds.airbnb.com/upgrading-from-ree-187-to-ruby-193/
祝你好運!
(1): "Using this gem in Ruby 1.9 is useless and does not make any sense. System Timer is trying to work around some limitation of the "green thread" model used in Ruby 1.8 (MRI). See http://ph7spot .com/musings/system-timer了解更多詳情。” SystemTimer 的替代品是來自 Ruby 核心的 timeout.rb。2011 年 10 月 21 日" 來源: https://www.google.com/webhp?sourceid=chrome-instant&ion=1&espv=2&ie=UTF-8#q系統計時器%20gem
對我來說,我登錄到托管項目的服務器以查看那里安裝的版本: ruby --version
檢查它是否僅使用 ruby1.9 的 gem 文件,如 ruby-debug19,或者相反,僅用於 1.8 的 gem。 查看是否使用了 String#force_encoding - 它可以暗示它是 1.9。 其他 1.9 功能不太常用 AFAIK。
我有一個現有的 ruby on rails 項目。 如何找出應用程序最初使用的是哪個版本的 ruby?
編輯:總結這個線程:如果沒有特定於 ruby 版本的 gem,每個 ruby 都應該工作。 你所有的帖子都很有幫助-謝謝。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.