bundle exec è un comando Bundler per eseguire uno script nel contesto del bundle corrente (quello dal Gemfile della tua directory). rake db:migrate è lo script dove db è lo spazio dei nomi e migrate è il nome dell'attività definito.
È necessario il bundle exec?
Esegui bundle exec e Bundler. richiedere allo stesso tempo non è un problema, quindi è sicuro usare bundle exec anche quando non è necessario finché c'è un Gemfile in quella directory, non attiverà le gemme due volte.
Cosa fanno i bundle exec rails?
bundle exec apporta un certo numero di modifiche all'ambiente della shell, quindi esegue il comando specificato per intero. Modifica anche Rubygems: non consente il caricamento di gemme aggiuntive non nel bundle. modifica il metodo della gemma in modo che non sia operativo se una gemma che soddisfa i requisiti è nel pacchetto e per aumentare una gemma::LoadError se non lo è.
Come faccio a interrompere l'esecuzione del pacchetto?
Di solito premi Ctrl-C per interrompere webrick quando viene avviato senza l'opzione -d.
Perché devo digitare bundle exec?
Il bundle exec di Bundler richiede il file di installazione di Bundler che consente a Bundler di eseguire tutti i suoi hack per la ricerca di file per quando in seguito avrai bisogno di qualcosa. Ma potresti scoprire in alcuni casi che se le tue variabili di ambiente sono già impostate correttamente, i requisiti potrebbero funzionare senza l'aiuto di Bundler.