Rails 的 Rake Task List
今天有人問到怎麼清 log ,結果我一直記得 Rails 的 Rakefile 可以幫你 log,不過還是忘記怎麼打了,查了一下發現只要 rake log:clear 即可。
在 Rails 裡面,預設了很多 rake 指令可以幫你輕鬆達成許多任務。這裡列出所有的 Rails Rake Task List。基本上,要叫出 Task List 只要在 Rails 資料夾下面打 rake --task ,或是 rake -T ,他就會自動幫我們叫出 Rails 下面所有的 Rake Task List。
在 Rails 裡面,預設了很多 rake 指令可以幫你輕鬆達成許多任務。這裡列出所有的 Rails Rake Task List。基本上,要叫出 Task List 只要在 Rails 資料夾下面打 rake --task ,或是 rake -T ,他就會自動幫我們叫出 Rails 下面所有的 Rake Task List。
DB 處理方面的 Task
- rake db:fixtures:load
# Load fixtures into the current environment's database. Load specific fixtures using FIXTURES=x,y - rake db:migrate
使用 Database 的 migrate 功能,他會把 db/migrate 裡面寫的 script 寫入到 DB 裡面。 - rake db:schema:dump
將 DB 的 Schema Dump 到 schema.rb 這個檔案裡面 - rake db:schema:load
將 schema.rb Load 進入 DB 裡面 - rake db:sessions:clear
假設你的 Session 是利用 CGI::Session::ActiveRecordStore 存在 DB 裡面的時候,這個指令可以清理裡面Session 的 Table - rake db:sessions:create
當你要使用 ActiveRecordStore 來存放 Session 時,你可以用這個指令來 create Session DB - rake db:structure:dump
將 DB 的 Schema Dump 到 SQL format 的檔案 - rake db:test:clone
# Recreate the test database from the current environment's database schema - rake db:test:clone_structure
# Recreate the test databases from the development structure - rake db:test:prepare
# Prepare the test database and load the schema - rake db:test:purge
# Empty the test database
自動建立 RDoc
- rake doc:app # Build the app HTML Files
- rake doc:clobber_app # Remove rdoc products
- rake doc:clobber_plugins # Remove plugin documentation
- rake doc:clobber_rails # Remove rdoc products
- rake doc:plugins # Generate documation for all installed plugins
- rake doc:rails # Build the rails HTML Files
- rake doc:reapp # Force a rebuild of the RDOC files
- rake doc:rerails # Force a rebuild of the RDOC files
清理 log file
- rake log:clear
清除 log file
Rails 版本 Freeze 跟 Update
- rake rails:freeze:edge
把這個 Rails Package 的 version lock 到最新的 version,也就是會 copy 一份Rails包到 vernder/rails/ 資料夾底下,以後跑這個 Rails Package 就不使用系統內部的 Rails Version,而是使用 vender/rails/ 底下的 version。
# Lock to latest Edge Rails or a specific revision with REVISION=X (ex: REVISION=4021) or a tag with TAG=Y (ex: TAG=rel_1-1-0) - rake rails:freeze:gems # Lock this application to the current gems (by unpacking them into vendor/rails)
- rake rails:unfreeze
如果之前使用過 rake rails:freeze:edge ,但是如果你後悔了,想要重新啟用系統裡面的 Rails Version,那就用這個指令將 vender/rails 裡面的東西清掉。
# Unlock this application from freeze of gems or edge and return to a fluid use of system gems - rake rails:update # Update both configs, scripts and public/javascripts from Rails
- rake rails:update:configs # Update boot/config.rb from your current rails install
- rake rails:update:javascripts # Update your javascripts from your current rails install
- rake rails:update:scripts # Add new scripts to the application script/ directory
code state
- rake stats
Show 出目前 App Code 的狀況
Unit Testing 方面
- rake test # Test all units and functionals
- rake test:functionals # Run tests for functionalsdb:test:prepare
- rake test:integration # Run tests for integrationdb:test:prepare
- rake test:plugins # Run tests for pluginsenvironment
- rake test:recent # Run tests for recentdb:test:prepare
- rake test:uncommitted # Run tests for uncommitteddb:test:prepare
- rake test:units # Run tests for unitsdb:test:prepare
清理 tmp/ 底下的暫存檔
- rake tmp:cache:clear
將所有 tmp/cache/ 裡面的東西都清理掉 - rake tmp:clear
將所有 tmp/ 裡面的東西都清理掉 - rake tmp:create
建立 tmp/ 資料夾,順便建立 tmp/sessions/,tmp/cache/,tmp/sockets/ - rake tmp:sessions:clear
將所有 tmp/sessions/ 裡面的東西都清理掉 - rake tmp:sockets:clear
將所有 tmp/sockets/ 裡面的東西都清理掉
沒有留言:
張貼留言