I have the following issue:
I'm trying to deploy my project on heroku but after i run
git push heroku master
I get the following:
git push heroku master -f
Counting objects: 524, done.
Delta compression using up to 2 threads.
Compressing objects: 100% (498/498), done.
Writing objects: 100% (524/524), 157.76 KiB, done.
Total 524 (delta 207), reused 62 (delta 2)
-----> Heroku receiving push
-----> Ruby/Rails app detected
!
! Gemfile.lock is required. Please run "bundle install" locally
! and commit your Gemfile.lock.
!
! Heroku push rejected, failed to compile Ruby/rails app
To git@heroku.com:*****.git
! [remote rejected] master -> master (pre-receive hook declined)
error: failed to push some refs to 'git@heroku.com:*****.git'
I have run bundle install
and bundle update
for several times, i tried to delete Gemfile.lock
from the repository and from my filesystem. But i still get the same message. Can anyone tell me what am i doing wrong?
The branch i'm trying to push is cloned from master.
Few things
- Did you placed Gemfile.lock in git? if yes, is it lock (means updated? - you did several times just double check)
- Just do
bundle install
on your local prompt.
- now place Gemfile.lock
git add .
or you can add only Gemfile.lock with this git add Gemfile.lock
- git commit -m "commit message here"
- git push
Now do git push heroku
it should work.
On your development machine run
rm -rf .bundle && bundle install && git add Gemfile.lock && git commit -m "Added Gemfile.lock"
Then deploy.
Most likely your Gemfile.lock is not committed to your repository. Use git st
and ensure that the Gemfile.lock is committed; check your .gitignore file to make sure that you're not accidentally ignoring it.
Check your .gitignore file, if you put Gemfile.lock there, get rid of that line and run this commands:
git add Gemfile.lock
git commit -m "Added Gemfile.lock"
git push
git push heroku
It's telling you that you need to push a Gemfile.lock - that's how Heroku knows what versions of gems your application is using. After bundling locally, commit the resultant Gemfile.lock then push the application to Heroku.
I had this problem, I forgot the bundle install
After it and git & Heroku everything went OK
Don't forget either the git remote
after writing your code the sequence would be :
bundle install
heroku create
git init
git add *
git remote
git commit -a -m "First init"
git push heroku master
I think it's complete
Just remove the /Gemfile.lock
from your .gitignore
You also need to check your .hgignore file as well and remove the line Gemfile.lock