Skip to content
Latchkey

Gemfileとは?

Gemfileの解説。何をするもので、CI/CDでどう重要かを含みます。

GemfileはRubyプロジェクトのgem依存関係を宣言するもので、Bundlerが読み取ります。

何であるか

gemとバージョン制約を列挙します。Bundlerはそれらを解決し、正確なバージョンをGemfile.lockに書き込みます。

CI/CDで重要な理由

CIはbundle installを実行し、再現性のためにbundle install --frozenを使うかBUNDLE_FROZENを設定します。これはGemfileとlockが同期していない場合に失敗します。

重要なポイント

  • GemfileはRubyのgemを宣言します。
  • BundlerがこれをGemfile.lockへ解決します。
  • CIではfrozenモードを使いましょう。

関連ガイド