Can not update gems on production server.
I've tried bundle install --deployment
and bundle install --without development test
But keep getting:
You are trying to install in deployment mode after changing your Gemfile. Run `bundle install` elsewhere and add the updated Gemfile.lock to version control. If this is a development machine, remove the Gemfile freeze by running `bundle install --no-deployment
I don't know if this is correct, but needed a quick fix. I ran bundle install --no-deployment
then bundle update
then ran bundle install --deployment
again
The Gemfile. lock allows you to specify the versions of the dependencies that your application needs in the Gemfile , while remembering all of the exact versions of third-party code that your application used when it last worked correctly. By specifying looser dependencies in your Gemfile (such as nokogiri ~> 1.4.
Gemfile. lock is automatically generated when you run bundle install or bundle update . It should never be edited manually.
The instructions are probably a bit confusing. It's saying that you've modified your Gemfile
on your development machine and just pushed those changes rather than running bundle install
BEFORE committing the changes.
By running bundle install
you will update your Gemfile.lock
file. This should be pushed to your server as it's more important than Gemfile
. Consider the Gemfile
the plans for the Gemfile.lock
file.
Always remember to:
bundle install
if you change your Gemfile
, even just to make sure. If it's too slow, pass --local
through which forces it to only use local gems to resolve its dependencies.Gemfile
and Gemfile.lock
file to your repositoryGemfile
and Gemfile.lock
to your production servers to ensure that they're running the exact same dependencies as your development environment.Running bundle update
by itself can be construed as dangerous that will update all the dependencies of your application. It's mainly dangerous if you don't have solid version numbers specified in the Gemfile
. I wrote about it here.
FWIW I had this problem and fixed it by removing some conditional statements from my Gemfile (conditionals on OS) and rerunning bundle.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With