私はrbenvを使用しますが、他のチームメンバーはRVMを使用しています。動的Gemfile rbenvとRVMのRubyバージョン
私はこれをやってきたGemfileでruby 2.x.x
バージョン指定:
ruby ENV['RBENV_VERSION'] || '2.2.4'
私はrbenvから使用している現在のバージョンをつかんでGemfileのためにそれを使用しています。ただし、プロダクションでは、それは存在せず、||
の後に指定されたバージョンを使用します。
私はRVMでこれを行うために同様の方法を探していました。究極の目標は、すべての開発者がRubyのローカルバージョンを使用できるGemfileを設定し、具体的なバージョンをプロダクション用に指定することでした。
これにより、開発者は、プロジェクトにrbenvまたはRVMを使用できるだけでなく、インストールされていないバージョンのプロジェクトで作業するたびに新しいバージョンのRubyをインストールする必要がなくなります。
私にRVMのENV['RBENV_VERSION']
と同等のものを与えるRVMユーザーはいますか?私はたくさんの検索をしていて、好きなものは見つけられませんでした。
私が見ることができる最良の答えは、RVMユーザーがチームによって合意された環境変数名を使ってバージョンを指定し、 "Specifying a Ruby version via the environment"のように使用し、その代わりにGemfileで使用することです。任意のRVMインスタンスから現在のRubyのバージョンを取得する
特定のルビバージョン2.2.4は、開発用ではなく、生産用であることを考えると、最初はなぜあなたの 'Gemfile'にありますか?'config/deploy.rb'のような、もっと賢明な場所に置くのはいかがですか? –
私はHerokuにデプロイしていて、ドキュメントの指示どおりに、[こちら](https://devcenter.heroku.com/articles/ruby-versions)に示されているGemfileにルビーバージョンを入れています。バージョンを別の場所に置いても、それは私の質問には答えません。それは問題を別のファイルに移動するだけです:) – bideowego
ああ、あなたの問題を今理解しています。 (BTW、私の提案は質問に答えていました。問題はまだ開発とプロダクションの設定を分けることです。)https://github.com/bkeepers/dotenvを使って開発用ルビーのバージョンを保存する方法はありますか?それは働くだろうか? –