Gemfile e Gemfile.lock in Ruby
On Setembro 30, 2021 by adminGemfile
A Gemfile é um ficheiro que criamos e que é utilizado para descrever as dependências de gema para programas Ruby. Uma gem é uma colecção de código Ruby que podemos extrair para uma “colecção” que podemos chamar mais tarde. Ela permite que você especifique quais gems você quer usar, e quais versões dessas gems usar.
Exemplo de um simples Gemfile :
source 'https://rubygems.org'gem 'nokogiri'
gem 'rails', '3.0.0.beta3'
gem 'rack', '>=1.0'
gem 'thin', '~>1.1'
Gemfile.lock
O arquivo Gemfile.lock
é onde o Bundler grava as versões exatas que foram instaladas. Desta forma, quando a mesma biblioteca/projeto é carregada em outra máquina, rodando bundle install
irá olhar para o Gemfile.lock
e instalar exatamente as mesmas versões, ao invés de apenas usar o Gemfile
e instalar as versões mais recentes.
Bundler fornece um ambiente consistente para projetos Ruby, rastreando e instalando as gems e versões exatas que são necessárias. Bundler é uma saída do inferno da dependência, e assegura que as gemas que você precisa estão presentes em desenvolvimento, encenação e produção. Iniciar o trabalho em um projeto é tão simples quanto instalar o bundle .
Executar versões diferentes em máquinas diferentes pode levar a testes quebrados, etc. Nunca edite diretamente o arquivo lock.
Exemplo de um Gemfile.lock :
Deixe uma resposta