Rake is invoked from the command line using:
% rake [<em>options</em> ...] [<em>VAR</em>=<em>VALUE</em>] [<em>targets</em> ...]
Options are:
name=value
-
Set the environment variable name to value during the execution of the rake command. You can access the value by using ENV[‘name’].
--classic-namespace
(-n)-
Import the Task, FileTask, and FileCreateTask into the top-level scope to be compatible with older versions of Rake. Alternatively you can include the line
require 'rake/classic_namespace'
in your Rakefile to get the classic behavior. --describe
pattern (-D)-
Describe the tasks (matching optional PATTERN), then exit.
--dry-run
(-n)-
Do a dry run. Print the tasks invoked and executed, but do not actually execute any of the actions.
--execute
code (-e)-
Execute some Ruby code and exit.
--execute-print
code (-p)-
Execute some Ruby code, print the result, and exit.
--execute-continue
code (-p)-
Execute some Ruby code, then continue with normal task processing.
--help
(-H)-
Display some help text and exit.
--libdir
directory (-I)-
Add directory to the list of directories searched for require.
--threads
[number-
(-j)]
Run up to N independent tasks simultaneously in separate threads. If _number_ is not given, run as many tasks in parallel as the dependencies allow.
--nosearch
(-N)-
Do not search for a Rakefile in parent directories.
--prereqs
(-P)-
Display a list of all tasks and their immediate prerequisites.
--quiet
(-q)-
Do not echo commands from FileUtils.
--rakefile
filename (-f)-
Use filename as the name of the rakefile. The default rakefile names are
rakefile
andRakefile
(withrakefile
taking precedence). If the rakefile is not found in the current directory,rake
will search parent directories for a match. The directory where the Rakefile is found will become the current directory for the actions executed in the Rakefile. --rakelibdir
rakelibdir (-R)-
Auto-import any .rake files in RAKELIBDIR. (default is ‘rakelib’)
--randomize
[seed]-
Randomize the order of sibling prerequisites for each task. Runs with the same seed will produce the same sibling permutations. If no seed is given then one will be generated. seed is reported when Rake exits.
--require
name (-r)-
Require name before executing the Rakefile.
--rules
-
Trace the rules resolution.
--silent (-s)
-
Like –quiet, but also suppresses the ‘in directory’ announcement.
--system
(-g)-
Use the system wide (global) rakefiles. The project Rakefile is ignored. By default, the system wide rakefiles are used only if no project Rakefile is found. On Unix-like system, the system wide rake files are located in $HOME/.rake. On a windows system they are stored in $APPDATA/Rake.
--no-system
(-G)-
Use the project level Rakefile, ignoring the system-wide (global) rakefiles.
--tasks
pattern (-T)-
Display a list of the major tasks and their comments. Comments are defined using the “desc” command. If a pattern is given, then only tasks matching the pattern are displayed.
--no-top-level-dsl
(-X)-
Do not put the Rake DSL commands into the top level scope.
--top-level-dsl
-
Put the Rake DSL commands into the top level scope (default).
NOTE: Although currently Rake defaults to its DSL in the top level scope, the plan is to deprecate this in the future and default ot having the DSL commands not appear in the top level scope.
--trace
(-t)-
Turn on invoke/execute tracing. Also enable full backtrace on errors.
--verbose
(-v)-
Echo the Sys commands to standard output.
--version
(-V)-
Display the program version and exit.
--where
pattern (-W)-
Display tasks that match pattern and the file and line number where the task is defined.
In addition, any command line option of the form VAR=VALUE will be added to the environment hash ENV
and may be tested in the Rakefile.