4

Gemfile に次の構成があります。

group :test do
  # ...
  gem "shoulda-matchers", :git => "git://github.com/watu/shoulda-matchers.git", :branch => "do_not_load_minitest"
end

ローカルでは問題なく動作しますが、Heroku にプッシュするときに rake db:migrate を実行しようとすると、次のエラーが発生します。

git://github.com/watu/shoulda-matchers.git (do_not_load_minitest で) はチェックアウトされていません。実行してくださいbundle install

実際、Heroku で実行されている bundle install の出力には表示されません。これはおそらく、テスト グループ上にあり、Heroku がテスト グループをインストールしていないためです。しかし、なぜ rake db:migrate を実行すると文句が出るのですか? ステージング環境で実行する必要がありますか?

http url に切り替えようとしましたが、別の URL で同じエラーが発生しました。

https://github.com/watu/shoulda-matchers.git (do_not_load_minitest で) はチェックアウトされていません。実行してくださいbundle install

:test グループの外に行を移動すると、問題が回避されました。適切な解決策は何ですか?

4

1 に答える 1

0

その宝石が本当に必要ない場合 (:test グループにあるため)、この構成をアプリに追加できます。

heroku config:add BUNDLE_WITHOUT="development:test" --app <your_app>
于 2012-06-18T11:26:08.133 に答える