Rake lista de tarefas no Rails

Às vezes no Rails é útil ver uma lista de tarefas Rake que estão disponíveis para você.

Talvez você saiba que há uma tarefa que faz algo específico, mas não consegue se lembrar direito de como foi chamada.

A solução? Apenas liste as tarefas, assim:

rake -T

Em alguns de meus projetos, isso retorna uma lista bastante grande de tarefas de rake, que podem demorar um pouco para serem examinadas. Para acelerar isso, você sempre pode fornecer um prefixo para ajudar o Rake a filtrar os resultados. Por exemplo, digamos que eu queira listar todas as tarefas relacionadas ao banco de dados , posso apenas fazer isso:

rake -T db

No meu sistema rodando Rails 3.2.13 , este é o resultado:

* rake -T db
WARNING
: Nokogiri was built against LibXML version 2.8.0, but has dynamically loaded 2.7.8
rake db
:create # Create the database from DATABASE_URL or config/database.yml for the current Rails.env (use db:create:all to create all dbs in the config)
rake db
:drop # Drops the database using DATABASE_URL or the current Rails.env (use db:drop:all to drop all databases)
rake db
:fixtures:load # Load fixtures into the current environment's database.
rake db
:migrate # Migrate the database (options: VERSION=x, VERBOSE=false).
rake db
:migrate:status # Display status of migrations
rake db
:rollback # Rolls the schema back to the previous version (specify steps w/ STEP=n).
rake db
:schema:dump # Create a db/schema.rb file that can be portably used against any DB supported by AR
rake db
:schema:load # Load a schema.rb file into the database
rake db
:seed # Load the seed data from db/seeds.rb
rake db
:setup # Create the database, load the schema, and initialize with the seed data (use db:reset to also drop the db first)
rake db
:structure:dump # Dump the database structure to db/structure.sql. Specify another file with DB_STRUCTURE=db/my_structure.sql
rake db
:version # Retrieves the current schema version number

Esta foi uma boa economia de tempo para mim, então espero que você obtenha uma quilometragem semelhante.

Aproveite,
Chip