[解決済み] bundle exec rake を使うか、それとも rake だけか?
質問
Railsの勉強はrakeコマンドだけを使って、以下のように行いました。
rake db:migrate
を使うべきだと書いてありました。
bundle exec rake ...
の代わりに
rake
. 今、私はどちらを使うべきか混乱しています。
を使うべきでしょうか?
bundle exec rake
ではなく、単に
rake
なのか、それとも単に好みの問題なのでしょうか?何かご意見があれば、ぜひお聞かせください。ありがとうございます。
どのように解決するのですか?
bundle exec
は、バンドル内のコンテキストでコマンドを実行します。
つまり、Gemfile で指定された gems を使用します。多くの場合
bundle exec rake foo
を実行した場合と同じ結果になります。
rake foo
を実行したのと同じ結果になります。特に、Gemfile にあるのと同じ gems がシステム全体にインストールされている場合はそうなります。しかし、アプリケーションによっては、システム全体にインストールされているものと異なるバージョンのgemsを指定し、正しく実行できるように正確なgemsとバージョンを必要とすることがあります。もし、単に
bundle exec
を付けずに実行すると、奇妙なエラーが発生することがあります。
使用している
bundle exec
を使うと、gemfile で指定された環境でプログラムが実行されることが保証されます。これは、プログラムの作成者が実行されることを望んでいる環境であることを期待しており、あなたのコンピュータにどんな奇妙な設定があっても正しく実行されることを期待しています。
これは基本的に、プログラムが実行される環境を標準化するものです。これは、バージョン地獄を避けるのに役立ち、人生をずっと楽にしてくれます。
参照 http://bundler.io/v1.3/man/bundle-exec.1.html をご覧ください。
関連
-
[解決済み】ActionController::InvalidAuthenticityTokenについて
-
[解決済み] gemのインストールができない - gemネイティブ拡張の構築に失敗 - そのようなファイルをロードできない -- mkmf (LoadError)
-
[解決済み] Ruby on rails "No route matches" (ルートに一致するものがない)。
-
[解決済み] Ruby on Railsでsimple_formを使うさまざまな方法|何が違うの?
-
[解決済み] ActionController::RoutingError: 初期化されていない定数MicropostsController
-
[解決済み] Heroku Error R14 (Memory quota exceeded): How do I solve this?
-
[解決済み] Railsコンソール:リロード!モデルファイルの変更が反映されない?考えられる理由は何でしょうか?
-
[解決済み] rake db:migrate db:reset とdb:schema:loadの違いについて
-
[解決済み] bundle exec rakeとはどういう意味ですか?
-
[解決済み】rakeタスクにコマンドライン引数を渡す方法
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】bundle installが "Could not locate Gemfile "を返す。
-
[解決済み] nil:NilClass の未定義メソッド `each'... なぜでしょうか?
-
[解決済み] Railsです。NameError: 初期化されていない定数
-
[解決済み] 新規ユーザー作成時に ActiveModel::ForbiddenAttributesError が発生する。
-
[解決済み] Rails のインストールに失敗する: activesupport には Ruby のバージョン >= 2.2.2 が必要です。
-
[解決済み] railsアプリケーションでCookieのオーバーフロー?
-
[解決済み] Ruby:Rubyの配列にinclude.の反対はある?
-
[解決済み] Railsはsaveでモデル内の検証をスキップしますか?
-
[解決済み] RubyとRailsの "Date.today "フォーマット
-
[解決済み] Rails 4で、以前のバージョンのRailsでattr_accessibleを使用していた状況に遭遇した場合、Forbidden Attributes Errorが発生する。