Heroku推送被拒绝,Ruby Version Changed Detected,找不到net-scp-1.0.6

我无法弄清楚这里发生了什么。 我周二部署到Heroku没有问题。 我没有在本地或在Gemfile上更改我的Ruby版本,但是heroku告诉我我已经更改了Ruby版本并且它无法找到net-scp-1.0.6。 一切都在本地完美运作,我搜索周围,找不到解决类似问题的任何事情。

Counting objects: 81, done. Delta compression using up to 4 threads. Compressing objects: 100% (62/62), done. Writing objects: 100% (62/62), 10.77 KiB, done. Total 62 (delta 49), reused 0 (delta 0) -----> Deleting 8 files matching .slugignore patterns. -----> Removing .DS_Store files -----> Ruby/Rails app detected -----> Using Ruby version: ruby-1.9.3 -----> Installing dependencies using Bundler version 1.3.0.pre.5 Ruby version change detected. Clearing bundler cache. Old: ruby 1.9.3p327 (2012-11-10 revision 37606) [x86_64-linux] New: ruby 1.9.3p392 (2013-02-22 revision 39386) [x86_64-linux] Running: bundle install --without development:test --path vendor/bundle --binstubs vendor/bundle/bin --deployment Fetching gem metadata from https://rubygems.org/....... Fetching gem metadata from https://rubygems.org/.. Could not find net-scp-1.0.6 in any of the sources ! ! Failed to install gems via Bundler. ! ! Heroku push rejected, failed to compile Ruby/rails app 

这就是我的Gemfile的样子。

 source 'https://rubygems.org' ruby '1.9.3' gem 'rails', '~> 3.2.11' gem 'aws-sdk' gem 'jquery-rails' gem 'jquery-ui-rails' gem 'pg' gem 'thin' gem 'best_in_place' gem 'stripe' gem 'paperclip' gem 'coffeebeans' gem 'mail' gem 'bcrypt-ruby', '~> 3.0.0' gem 'carmen' gem 'haml' gem 'devise' gem 'sinatra', '~> 1.3.2' gem 'dynamic_form' gem 'fog', '~> 1.3.1' gem 'wicked' gem 'lazy_high_charts', '~> 1.1.5' gem 'jquery-datatables-rails' gem 'sass-rails' group :assets do gem 'uglifier', '>= 1.0.3' gem 'coffee-rails', '~> 3.2.1' end group :test, :development do gem 'hirb' end 

任何想法,将不胜感激。 谢谢。

net-scp-1.0.6的gem最近被淘汰了。

在本地,运行:

 gem cleanup bundle update 

然后提交并推送,它会将net-scp更新为最新版本,你会没事的。

看起来我想出来了。 这个问题是由于安全问题导致net-scp从Ruby Gems中被淘汰造成的。 我按照这个雾问题( https://github.com/fog/fog/issues/1561 )的说明进行操作,并将net-scp锁定为1.0.4,生命恢复正常。