I'm on Ubuntu 10.04, the app that I have to push to Heroku has a Gemfile.lock, this app was developed by another programmer.
When I use bundle install
command, this install the necessary gems for run the app with rails s
.
Does bundle install
take specific gems in my Gemfile or Gemfile.lock?
My Gemfile and Gemfile.lock are not the same.
Do I have to remove Gemfile.lock?
This is my Gemfile:
source 'http://rubygems.org'
#ruby '1.9.3'
gem 'rails', "= 3.1.11"
#gem "rake", "= 0.8.7"
gem 'racc'
# gem 'sqlite3'
#gem 'acts_as_list', '>= 0.1.0'
#gem 'acts_as_tree'
gem 'paperclip'
gem 'aws-s3', :require => 'aws/s3'
gem 'aws-sdk'
gem 'gravatar_image_tag'
gem 'kaminari'
gem 'jquery-rails', '~> 2.1'
gem 'RedCloth', '>= 3.301'
gem 'carmen', :git => 'git://github.com/alvatarc/carmen.git', :branch => '0.2.x'
#gem 'carmen'
gem 'sass-rails'
gem 'http_accept_language'
gem 'right_aws'
gem 'exception_notification'
group :development do
gem 'sqlite3-ruby', :require => 'sqlite3'
gem 'rspec-rails', '= 2.7.0'
gem 'rspec-core', '= 2.7.1'
gem 'rspec'
#gem 'annotate-models'
gem 'faker'
gem 'therubyracer'
end
group :test do
gem 'sqlite3-ruby', :require => 'sqlite3'
gem 'rspec-rails', '= 2.7.0'
gem 'rspec-core', '= 2.7.1'
gem 'rspec'
gem 'webrat'
gem 'spork', '= 0.9.0.rc9'
gem 'factory_girl_rails'
end
group :production do
gem 'pg'
gem 'uglifier'
end
# To use debugger (ruby-debug for Ruby 1.8.7+, ruby-debug19 for Ruby 1.9.2+)
# gem 'ruby-debug'
# gem 'ruby-debug19', :require => 'ruby-debug'
This is my Gemfile.lock:
GIT
remote: git://github.com/alvatarc/carmen.git
revision: af7bcd574e2f0ed6d59b46662a8be939a1e083c0
branch: 0.2.x
specs:
carmen (0.2.13)
GEM
remote: http://rubygems.org/
specs:
RedCloth (4.2.9)
actionmailer (3.1.11)
actionpack (= 3.1.11)
mail (~> 2.3.3)
actionpack (3.1.11)
activemodel (= 3.1.11)
activesupport (= 3.1.11)
builder (~> 3.0.0)
erubis (~> 2.7.0)
i18n (~> 0.6)
rack (~> 1.3.6)
rack-cache (~> 1.2)
rack-mount (~> 0.8.2)
rack-test (~> 0.6.1)
sprockets (~> 2.0.4)
activemodel (3.1.11)
activesupport (= 3.1.11)
builder (~> 3.0.0)
i18n (~> 0.6)
activerecord (3.1.11)
activemodel (= 3.1.11)
activesupport (= 3.1.11)
arel (~> 2.2.3)
tzinfo (~> 0.3.29)
activeresource (3.1.11)
activemodel (= 3.1.11)
activesupport (= 3.1.11)
activesupport (3.1.11)
multi_json (~> 1.0)
arel (2.2.3)
aws-s3 (0.6.3)
builder
mime-types
xml-simple
aws-sdk (1.9.2)
json (~> 1.4)
nokogiri (>= 1.4.4)
uuidtools (~> 2.1)
builder (3.0.4)
climate_control (0.0.3)
activesupport (>= 3.0)
cocaine (0.5.1)
climate_control (>= 0.0.3, < 1.0)
diff-lcs (1.1.3)
erubis (2.7.0)
exception_notification (3.0.1)
actionmailer (>= 3.0.4)
execjs (1.4.0)
multi_json (~> 1.0)
factory_girl (4.2.0)
activesupport (>= 3.0.0)
factory_girl_rails (4.2.1)
factory_girl (~> 4.2.0)
railties (>= 3.0.0)
faker (1.1.2)
i18n (~> 0.5)
gravatar_image_tag (1.1.3)
hike (1.2.2)
http_accept_language (1.0.2)
i18n (0.6.4)
jquery-rails (2.2.1)
railties (>= 3.0, < 5.0)
thor (>= 0.14, < 2.0)
json (1.7.7)
kaminari (0.14.1)
actionpack (>= 3.0.0)
activesupport (>= 3.0.0)
libv8 (3.11.8.17)
mail (2.3.3)
i18n (>= 0.4.0)
mime-types (~> 1.16)
treetop (~> 1.4.8)
mime-types (1.23)
multi_json (1.7.2)
nokogiri (1.5.9)
paperclip (3.4.1)
activemodel (>= 3.0.0)
activerecord (>= 3.0.0)
activesupport (>= 3.0.0)
cocaine (~> 0.5.0)
mime-types
pg (0.15.1)
polyglot (0.3.3)
racc (1.4.9)
rack (1.3.10)
rack-cache (1.2)
rack (>= 0.4)
rack-mount (0.8.3)
rack (>= 1.0.0)
rack-ssl (1.3.3)
rack
rack-test (0.6.2)
rack (>= 1.0)
rails (3.1.11)
actionmailer (= 3.1.11)
actionpack (= 3.1.11)
activerecord (= 3.1.11)
activeresource (= 3.1.11)
activesupport (= 3.1.11)
bundler (~> 1.0)
railties (= 3.1.11)
railties (3.1.11)
actionpack (= 3.1.11)
activesupport (= 3.1.11)
rack-ssl (~> 1.3.2)
rake (>= 0.8.7)
rdoc (~> 3.4)
thor (~> 0.14.6)
rake (10.0.4)
rdoc (3.12.2)
json (~> 1.4)
ref (1.0.4)
right_aws (3.0.5)
right_http_connection (>= 1.2.5)
right_http_connection (1.3.0)
rspec (2.7.0)
rspec-core (~> 2.7.0)
rspec-expectations (~> 2.7.0)
rspec-mocks (~> 2.7.0)
rspec-core (2.7.1)
rspec-expectations (2.7.0)
diff-lcs (~> 1.1.2)
rspec-mocks (2.7.0)
rspec-rails (2.7.0)
actionpack (~> 3.0)
activesupport (~> 3.0)
railties (~> 3.0)
rspec (~> 2.7.0)
sass (3.2.8)
sass-rails (3.1.7)
actionpack (~> 3.1.0)
railties (~> 3.1.0)
sass (>= 3.1.10)
tilt (~> 1.3.2)
spork (0.9.0.rc9)
sprockets (2.0.4)
hike (~> 1.2)
rack (~> 1.0)
tilt (~> 1.1, != 1.3.0)
sqlite3 (1.3.7)
sqlite3-ruby (1.3.3)
sqlite3 (>= 1.3.3)
therubyracer (0.11.4)
libv8 (~> 3.11.8.12)
ref
thor (0.14.6)
tilt (1.3.7)
treetop (1.4.12)
polyglot
polyglot (>= 0.3.1)
tzinfo (0.3.37)
uglifier (2.0.1)
execjs (>= 0.3.0)
multi_json (~> 1.0, >= 1.0.2)
uuidtools (2.1.3)
webrat (0.7.3)
nokogiri (>= 1.2.0)
rack (>= 1.0)
rack-test (>= 0.5.3)
xml-simple (1.1.2)
PLATFORMS
ruby
DEPENDENCIES
RedCloth (>= 3.301)
aws-s3
aws-sdk
carmen!
exception_notification
factory_girl_rails
faker
gravatar_image_tag
http_accept_language
jquery-rails (~> 2.1)
kaminari
paperclip
pg
racc
rails (= 3.1.11)
right_aws
rspec
rspec-core (= 2.7.1)
rspec-rails (= 2.7.0)
sass-rails
spork (= 0.9.0.rc9)
sqlite3-ruby
therubyracer
uglifier
webrat
Does
bundle install
take specific gems in my Gemfile or Gemfile.lock?
bundle install
looks first into gemfile.lock, then looks into gemfile to generate a valid gem list, checks, tries to resolve the dependencies, and then install/update the gems.
My Gemfile and Gemfile.lock are not the same.
They don't need to be the same. gemfile.lock is a specific file to keep the gems' state at the time of running bundle install/update
.
Do I have to remove Gemfile.lock?
You can, but then bundle install
will generate gemfile.lock again. Then, you could really lose and break all gem dependencies, and might need to resolve them manually.
As an investigation procedure, you can copy old gemfile.lock to a secluded place, then regenerate gemfile.lock, and compare both with diff