Gemfile en Gemfile.lock in Ruby
On september 30, 2021 by adminGemfile
Een Gemfile is een bestand dat we maken en dat wordt gebruikt voor het beschrijven van gem afhankelijkheden voor Ruby programma’s. Een gem is een verzameling van Ruby code die we kunnen uitpakken in een “collectie” die we later kunnen aanroepen. Het laat u specificeren welke gems u wilt gebruiken, en welke versies van deze gems gebruikt moeten worden.
Voorbeeld van een eenvoudige Gemfile :
source 'https://rubygems.org'gem 'nokogiri'
gem 'rails', '3.0.0.beta3'
gem 'rack', '>=1.0'
gem 'thin', '~>1.1'
Gemfile.lock
Het Gemfile.lock
bestand is waar Bundler de exacte versies bijhoudt die geïnstalleerd zijn. Op deze manier, wanneer dezelfde bibliotheek/project op een andere machine wordt geladen, zal bundle install
kijken naar de Gemfile.lock
en exact dezelfde versies installeren, in plaats van alleen de Gemfile
te gebruiken en de meest recente versies te installeren.
Bundler biedt een consistente omgeving voor Ruby-projecten door de exacte gems en versies die nodig zijn bij te houden en te installeren. Bundler is een uitweg uit dependency hel, en zorgt ervoor dat de gems die je nodig hebt aanwezig zijn in ontwikkeling, staging, en productie. Beginnen met werken aan een project is zo simpel als bundle install .
Het draaien van verschillende versies op verschillende machines kan leiden tot kapotte tests, etc. Bewerk nooit direct de lock file.
Voorbeeld van een Gemfile.lock :
Geef een antwoord