Gemfile e Gemfile.lock in Ruby
Il Settembre 30, 2021 da adminGemfile
Un Gemfile è un file che creiamo che viene utilizzato per descrivere le dipendenze delle gemme per i programmi Ruby. Una gemma è un insieme di codice Ruby che possiamo estrarre in una “collezione” che possiamo chiamare in seguito. Ti permette di specificare quali gemme vuoi usare e quali versioni di queste gemme usare.
Esempio di un semplice Gemfile :
source 'https://rubygems.org'gem 'nokogiri'
gem 'rails', '3.0.0.beta3'
gem 'rack', '>=1.0'
gem 'thin', '~>1.1'
Gemfile.lock
Il file Gemfile.lock
è dove Bundler registra le versioni esatte che sono state installate. In questo modo, quando la stessa libreria/progetto viene caricata su un’altra macchina, l’esecuzione di bundle install
guarderà il Gemfile.lock
e installerà esattamente le stesse versioni, piuttosto che usare semplicemente il Gemfile
e installare le versioni più recenti.
Bundler fornisce un ambiente coerente per i progetti Ruby tracciando e installando esattamente le gemme e le versioni che sono necessarie. Bundler è un’uscita dall’inferno delle dipendenze e assicura che le gemme di cui hai bisogno siano presenti nello sviluppo, nello staging e nella produzione. Iniziare a lavorare su un progetto è semplice come bundle install .
Eseguire versioni diverse su macchine diverse potrebbe portare a test rotti, ecc. Non modificare mai direttamente il file di lock.
Esempio di un Gemfile.lock :
Lascia un commento