| MIX(1) | General Commands Manual | MIX(1) |
mix — The software
project management tool
mix |
[TASK] [project_name] |
elixir |
[OPTIONS] -S
mix [TASK]
[project_name] |
mix is intended for both organizing code
into projects and their maintenance. For the latter the tool offers some
advanced features like dependency management, packaging, preparing
documentation, testing and so on.
Have a look at the SYNOPSIS section and the
second way of running mix it offers. The point is
that the tool is none other than the Elixir script, therefore it can be
invoked via elixir(1) in the same way as any other script.
It's useful when you want to run mix with particular
options.
All the mix functionality is represented
by a set of tasks. A
task is a
piece of code written in Elixir and intended for solving a particular
problem. Like programs, many tasks accept input parameters and/or support
options which slightly modify their behaviour, but others do not. There are
two types of tasks: those that are available after installation this or that
archive (local tasks) and those that are offered by
mix (built-in tasks). The
run task
will be executed by default if none other has been specified.
In spite of the fact that the greater part of
mix is tasks, the man page doesn't contain the help
information related to each of them because mix is
self-descriptive. Thus, using the
help task, you can
get both the full list of local/built-in tasks and the information related
to a particular task.
An archive, in terms of Erlang/OTP, is the ZIP file with the .ez extension which contains a precompiled OTP application with all its dependencies[1].
An application is an entity that helps to combine sets of components into a single unit to simplify their reusing in other systems[2].
MIX_ARCHIVESMIX_DEBUGMIX_ENVSometimes you have to use a particular set of configuration
parameter values or perform particular steps when you compile or run a
project (or in some other cases). The mix
environments allow grouping values of configuration parameters and steps
to switch between them by specifying the necessary environment via
MIX_ENV.
MIX_EXSmix environments (see above) are not enough to
solve the problem.MIX_HOMEmix implementations.
See the Mix.Utils.mix_home/0 function.
MIX_PATHAs has already been mentioned above, there are two types of
tasks: local and built-in. These tasks are always visible for
mix because the directories, in which they are
located, are a part of code path. If a task belongs to neither the one
type nor the other, MIX_PATH helps you say to
mix where it should search the task.
Use the :code.get_path/0 function to get the list of paths which are a part of the code path by default and the Mix.Utils.mix_paths/0 function to get the list of paths specified in the MIX_PATH value.
MIX_QUIETThis manual page contributed by Evgeny Golyshev.
| May 27, 2015 | Debian |