🙄
Gemfile を使用せずに特定のバージョンの gem を利用する
特定の gem のバージョンの差異や gem に依存するサンプルコードを書く場合になるべく Gmefile に依存せずに1ファイルで完結してコードを書きたいことが割とあります。
そういう場合に次のように bundler を利用してコード上で直接 gem に依存するな設定を記述することで Ruby のコード内で依存する gem を定義することができます。
require "bundler/inline"
gemfile do
source "https://rubygems.org"
# ここに依存する gem を定義する
gem "activerecord", "> 8.0.0"
# 特定の branch を利用したい場合等
# gem "rails", github: "rails/rails", branch: :main
end
require "active_record"
pp ActiveRecord::VERSION::STRING
# => "8.0.2"
さっとバージョンを切り替えて動作確認ができるので便利。
Discussion