Gemfiles

首先,gemfiles 需要至少一個源,以 RubyGems 伺服器的 URL 的形式。

使用 bundle init 生成帶有預設 rubygems.org 源的 Gemfile。使用 https,以便使用 SSL 驗證你與伺服器的連線。

source 'https://rubygems.org'

接下來,宣告你需要的寶石,包括版本號。

gem 'rails', '4.2.6'
gem 'rack',  '>=1.1'
gem 'puma',  '~>3.0'

大多數版本說明符,如> = 1.0,都是不言自明的。說明符〜>具有特殊含義。 〜> 2.0.3 與> = 2.0.3 和<2.1 相同。 〜> 2.1 與> = 2.1 和<3.0 相同。 〜> 2.2.beta 將匹配像 2.2.beta.12 這樣的預釋出版本。

只要 repo 包含一個或多個有效的 gem,Git 儲存庫也是有效的 gem 源。使用:tag:branch:ref 指定要檢視的內容。預設為 master 分支。

gem 'nokogiri', :git => 'https://github.com/sparklemotion/nokogiri', :branch => 'master'

如果你想直接從檔案系統使用解壓縮的 gem,只需將:path 選項設定為包含 gem 檔案的路徑即可。

gem 'extracted_library', :path => './vendor/extracted_library'

依賴關係可以放入組中。可以在安裝時(使用 --without)忽略組或一次性需要(使用 Bundler.require)。

gem 'rails_12factor', group: :production

group :development, :test do
  gem 'byebug'
  gem 'web-console', '~> 2.0'
  gem 'spring'
  gem 'dotenv-rails'
end

你可以使用 ruby 在 Gemfile 中指定所需的 Ruby 版本。如果 Gemfile 在不同的 Ruby 版本上載入,Bundler 將引發一個帶有解釋的異常。

ruby '2.3.1'