【发布时间】:2017-07-10 10:41:02
【问题描述】:
如果我在我的 Gemfile 中使用:
gem "searcher", github: "radar/searcher"
捆绑安装完美运行。但我正在尝试为 heroku 部署,但我遇到了这个错误:
$ git push heroku master
Counting objects: 1277, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (1218/1218), done.
Writing objects: 100% (1277/1277), 143.11 KiB | 0 bytes/s, done.
Total 1277 (delta 793), reused 0 (delta 0)
remote: Compressing source files... done.
remote: Building source:
remote:
remote: -----> Ruby app detected
remote: -----> Compiling Ruby/Rails
remote: -----> Using Ruby version: ruby-2.2.6
remote: -----> Installing dependencies using bundler 1.13.7
remote: Running: bundle install --without development:test --path vendor/bundle --binstubs vendor/bundle/bin -j4 --deployment
remote: The git source `git://github.com/radar/searcher.git` uses the `git` protocol, which transmits data without encryption. Disable this warning with `bundle config git.allow_insecure true`, or switch to the `https` protocol to keep your data secure.
remote: You are trying to install in deployment mode after changing
remote: your Gemfile. Run `bundle install` elsewhere and add the
remote: updated Gemfile.lock to version control.
remote: You have added to the Gemfile:
remote: * source: git://github.com/radar/searcher.git (at master)
remote: You have deleted from the Gemfile:
remote: * source: https://github.com/radar/searcher.git (at master@c297512)
remote: Bundler Output: The git source `git://github.com/radar/searcher.git` uses the `git` protocol, which transmits data without encryption. Disable this warning with `bundle config git.allow_insecure true`, or switch to the `https` protocol to keep your data secure.
remote: You are trying to install in deployment mode after changing
remote: your Gemfile. Run `bundle install` elsewhere and add the
remote: updated Gemfile.lock to version control.
remote:
remote: You have added to the Gemfile:
remote: * source: git://github.com/radar/searcher.git (at master)
remote:
remote: You have deleted from the Gemfile:
remote: * source: https://github.com/radar/searcher.git (at master@c297512)
remote: !
remote: ! Failed to install gems via Bundler.
remote: !
remote: ! Push rejected, failed to compile Ruby app.
remote:
remote: ! Push failed
remote: Verifying deploy...
remote:
remote: ! Push rejected to glacial-beyond-39560.
remote:
To https://git.heroku.com/glacial-beyond-39560.git
! [remote rejected] master -> master (pre-receive hook declined)
error: failed to push some refs to 'https://git.heroku.com/glacial-beyond-39560.git'
然后我尝试在 Gemfile 中调整以仅放置 gem "searcher",但尝试捆绑时出现错误:
Bundler could not find compatible versions for gem "activerecord":
In snapshot (Gemfile.lock):
activerecord (= 4.2.1)
In Gemfile:
rails (= 4.2.1) was resolved to 4.2.1, which depends on
activerecord (= 4.2.1)
searcher was resolved to 0.0.1, which depends on
activerecord (~> 3.0.0)
Running `bundle update` will rebuild your snapshot from scratch, using only
the gems in your Gemfile, which may resolve the conflict.
我看到建议使用 ActiveRecord 3x。我需要做什么(为active_record 3x安装一个版本的rails?或者我厚的是这个gem的安全协议?有人可以帮我吗???
【问题讨论】:
标签: ruby-on-rails-4 heroku activerecord rubygems