首先rake是一門構建語言,rake是ruby寫的。
首先我遇到一個問題 當執行rake db:migrate時提示
Gem::LoadError: You have already activated rake 10.3.2, but your Gemfile requires rake 10.1.1. Prepending `bundle exec` to your command may solve this.
雖然你可能看不大懂詳細內容,但明顯的是板本問題。這個問題也很容易解決,只需在rake db:migrate前加上bundle exec即可解決。
rake db:migrate是移植數據庫。那麼,這裏實際是調用了一個rake的gem,所以,如果你的系統,如果有多個rake,比如,你係統是10.3.2但你在這個項目的Gemfile裏寫rake版本是10.1.1,項目多的時候完全可能,有些項目的有些gem版本就是沒有升級。那麼,寫bundle exec會調用10.1.1的rake執行,不寫的系統會默認調用最新的版本也就是10.3.2的rake。所以有可能會出錯。
"rake -T" 可以列出所有rake命令。
rake會運行test目錄下的所有測試
rake log:clear:截斷應用程序日誌目錄中的日誌文件。
rake stats:輸出你應用程序的有用的統計,包括代碼行和代碼測試的比率。
rake db相關命令。
rake db:charset 檢索當前環境下數據庫的字符設置 utf-8
rake db:collation 檢索當前環境下數據庫的校對
rake db:create 用config\database.yml中的定義創建當前 RAILS_ENV 項目環境下的數據庫
rake db:create:all 用config\database.yml中的定義創建所有數據庫
rake db:drop 刪除當前 RAILS_ENV項目環境中的數據庫
rake db:drop:all 刪除所有在 config\database.yml中定義的數據庫
rake db:reset 從db\schema.rb中爲當前環境重建數據庫(先刪後建)
rake db:rollback 回滾數據庫到前一個版本. 指定回滾到哪一步要用 STEP=n 參數
rake db:version 檢索當前模式下的版本
rake db:migrate 建立數據庫
rake 命令尋找當前目錄下的 Rakefile 文件