Heroku拒绝推动成熟应用程序(预接收挂钩拒绝)

时间:2011-07-18 23:48:44

标签: ruby-on-rails ruby heroku gem

我正在

   FAILED: http://devcenter.heroku.com/articles/bundler

! Heroku推被拒绝,未能通过Bundler安装宝石 到git@heroku.com:..  ! [远程拒绝]主人 - >主人(预先接收挂钩拒绝) 错误:未能推送一些参考............ .. (见完整列表的底部)

这是一个目前正在使用heroku的应用程序,但是heroku不允许git push heroku master更新代码。

但是,如果我将代码克隆到新文件夹并执行heroku创建以创建具有种子数据的新应用程序,则新应用程序可以正常工作。但是,我不想使用新的应用程序,因为我有关于我想要保留的正常运行的应用程序的数据。

现有应用程序或宝石上似乎存在阻止更新的内容。我不认为数据可以阻止安装宝石,所以我不知道该怎么做。

建议?

“Heroku推送被拒绝,无法通过Bundler安装宝石”意味着问题在于更新宝石,还是红鲱鱼?

感谢。

$ git push heroku master 计数对象:536,完成。 Delta压缩最多使用2个线程。 压缩对象:100%(125/125),完成。 书写对象:100%(391/391),1.08 MiB,完成。 总计391(delta 262),重复使用373(delta 251)

-----> Heroku receiving push
-----> Removing .DS_Store files
-----> Rails app detected
-----> Detected Rails is not set to serve static_assets
       Installing rails3_serve_static_assets... done
-----> Configure Rails 3 to disable x-sendfile
       Installing rails3_disable_x_sendfile... done
-----> Configure Rails to log to stdout
       Installing rails_log_stdout... done
-----> Gemfile detected, running Bundler version 1.0.7
       Unresolved dependencies detected; Installing...
       Using --without development:test
       Windows Gemfile.lock detected, ignoring it.
       You have modified your Gemfile in development but did not check
       the resulting snapshot (Gemfile.lock) into version control
   You have added to the Gemfile:
   * source: rubygems repository http://rubygems.org/
   * rails (= 3.0.5)
   * haml
   * haml-rails
   * sqlite3-ruby
   * devise (= 1.1.5)
   * omniauth
   * declarative_authorization
   * will_paginate (= 3.0.pre2)
   * nifty-generators
   * acts-as-taggable-on
   * acts_as_commentable
   * aws-s3
   * jquery-rails
   * rspec-rails
   * annotate
   * faker (= 0.3.1)
   * hpricot (= 0.8.3)
   * ruby_parser
   * paperclip (~> 2.3)
   * formtastic (~> 1.2.3)
   * hirb
   * kaminari
   * rspec (= 2.5.0)
   * webrat
   * factory_girl_rails (= 1.0)
   * cucumber
   * mocha
   FAILED: http://devcenter.heroku.com/articles/bundler

! Heroku推被拒绝,无法通过Bundler安装宝石

到git@heroku.com:..  ! [远程拒绝]主人 - >主人(预先接收挂钩拒绝) 错误:未能将某些引用推送到............ ..

5 个答案:

答案 0 :(得分:7)

You have modified your Gemfile in development but did not check
the resulting snapshot (Gemfile.lock) into version control

这意味着您已向gemfile添加了gem,但尚未更新到。 Gemfile.lock与此文件不同步。

您需要更新捆绑包。

在应用程序目录的控制台中运行此命令:bundle

然后执行git push heroku

你应该好好去。

**压缩应用程序并重新开始。

gem install taps #install taps
heroku db:pull   #pull your data to your local machine

rm -rf .git #remove your git repo 
git init    #create a new repo
git add .   #add all the files
git commit -m 'master' #commit as master

heroku create #create a new heroku app
heroku rename myapp #rename the app
git push heroku master #push to heroku

heroku db:push #push your data to heroku

这应该会有一个新的应用程序。

答案 1 :(得分:0)

我遇到了同样的问题,以下内容为我解决了这个问题:

我有按要求(测试,开发等)分组的宝石组合,以及两者都使用的宝石组合。

group :development do
  gem "hpricot"
  gem "ruby_parser"
  gem "haml-rails", ">= 0.3.4"
end

gem "rspec-rails", ">= 2.9.0.rc2", :group => [:development, :test]

我删除了单行的那些,只是在相关的块中复制了它们(不是我知道的干,但到底是什么)。

快速捆绑了,嘿,我可以再次推向Heroku ......

答案 2 :(得分:0)

据我所知,这是一个Windows问题。

Why won't Heroku accept my Gemfile.lock in Windows?

我花了好几个小时试图解决这个问题而且没有骰子。是时候转移到虚拟机并尝试那里了。长号。

答案 3 :(得分:0)

我遇到了同样的错误,在命令行中运行以下代码解决了它:

$ heroku config:设置BUNDLE_WITHOUT =“development:test”


我认为上面描述的gemfile.lock问题是红色的鲱鱼。

答案 4 :(得分:0)

或者,可能是Heroku遇到API问题而且已经失败了。查看https://status.heroku.com/

今天发生了一个成熟的应用程序。