Gemfile a Gemfile.lock in Ruby
On 30 září, 2021 by adminGemfile
Gemfile je soubor, který vytváříme a který slouží k popisu závislostí gemů pro programy v Ruby. Gem je kolekce kódu Ruby, kterou můžeme extrahovat do „kolekce“, kterou můžeme později zavolat. Umožňuje určit, které gemy chceme použít a které verze těchto gemů chceme použít.
Příklad jednoduchého souboru Gemfile :
source 'https://rubygems.org'gem 'nokogiri'
gem 'rails', '3.0.0.beta3'
gem 'rack', '>=1.0'
gem 'thin', '~>1.1'
Gemfile.lock
Soubor Gemfile.lock
je místem, kde Bundler zaznamenává přesné verze, které byly nainstalovány. Tímto způsobem se při načtení stejné knihovny/projektu na jiném počítači spuštěný bundle install
podívá do Gemfile.lock
a nainstaluje přesně stejné verze, místo aby použil pouze Gemfile
a nainstaloval nejnovější verze.
Bundler poskytuje konzistentní prostředí pro projekty Ruby tím, že sleduje a instaluje přesně ty drahokamy a verze, které jsou potřeba. Bundler je východiskem z pekla závislostí a zajišťuje, že potřebné gemy jsou přítomny ve vývojovém, stagingovém i produkčním prostředí. Zahájení práce na projektu je tak jednoduché jako bundle install .
Spouštění různých verzí na různých počítačích by mohlo vést k nefunkčním testům atd. Nikdy neupravujte přímo soubor zámku.
Příklad souboru Gemfile.lock :
Napsat komentář