Skip to content
OS-agnostic, system-level binary package manager and ecosystem
Python Shell Batchfile PowerShell Makefile HTML
Branch: master
Clone or download
msarahan Merge pull request #9637 from timgates42/bugfix/typo_submissive
Fix simple typo: submissve -> submissive
Latest commit 457b439 Jan 27, 2020
Type Name Latest commit message Commit time
Failed to load latest commit information.
.github Merge pull request #9605 from conda/csoja-patch-5 Jan 15, 2020
conda.recipe skip env creation in run_test.bat on appveyor (permissions issue) May 31, 2019
conda fix unit test deprecation warnings py36 macOS Jan 23, 2020
conda_env Add test for creating empty env Dec 23, 2019
dev Make sure to install deps on osx when using ./dev/start May 2, 2019
docs Release notes for conda 4.8.2 Jan 24, 2020
recipe remove setuptools from run_constrained in recipe Dec 6, 2019
test-data/repodata add test-data directory Aug 20, 2018
test_data force-add files that were gitignored Sep 3, 2018
tests Fix simple typo: submissve -> submissive Jan 26, 2020
utils Revert "Add bash_completion for the conda command" Nov 8, 2019
.cla-signers update cla signers Jun 11, 2019
.codecov.yml remove dead code Dec 5, 2017
.exempt-commits add cla signatories Sep 25, 2018
.gitattributes More LF shell Mar 21, 2019
.github-map add cla signatories Sep 25, 2018
.gitignore Checkpoint: support priority and validation Nov 19, 2019
.lgtm.yml update Feb 15, 2018
.mailmap Added name to CLA signers, mailmap. Sep 23, 2018
.readthedocs.yml Changed environment to file Apr 25, 2019 4.8.2 changelog Jan 24, 2020 Fix the checkout step in the Windows dev env setup instruction Jun 26, 2019
LICENSE.txt add copyright headers Jun 2, 2018 fixup recipes and Apr 18, 2018
Makefile Attempt to make sure we test on the same fs as Miniconda is installed on Mar 24, 2019
README.rst Fix links Apr 2, 2019
appveyor.yml add urllib3>1.23 for appveyor responses Jan 23, 2020
circle.yml Fix unit tests on ci setup Dec 19, 2019
conda-forge.yml Fix some tests on Windows Mar 23, 2019 fix unicode in py27 win tempdir May 30, 2019
setup.cfg fix unit test deprecation warnings py36 macOS Jan 23, 2020 Merge branch '4.5.x' into reenable_timestamps_default Jan 9, 2019


Conda Logo

Unix tests (CircleCI) Windows tests (Appveyor) Codecov Status latest release version

Conda is a cross-platform, language-agnostic binary package manager. It is the package manager used by Anaconda installations, but it may be used for other systems as well. Conda makes environments first-class citizens, making it easy to create independent environments even for C libraries. Conda is written entirely in Python, and is BSD licensed open source.

Conda is enhanced by organizations, tools, and repositories created and managed by the amazing members of the conda community. Some of them can be found here.


Conda is a part of the Anaconda Distribution. Use Miniconda to bootstrap a minimal installation that only includes conda and its dependencies.

Getting Started

If you install Anaconda, you will already have hundreds of packages installed. You can see what packages are installed by running

$ conda list

to see all the packages that are available, use

$ conda search

and to install a package, use

$ conda install <package-name>

The real power of conda comes from its ability to manage environments. In conda, an environment can be thought of as a completely separate installation. Conda installs packages into environments efficiently using hard links by default when it is possible, so environments are space efficient, and take seconds to create.

The default environment, which conda itself is installed into is called base. To create another environment, use the conda create command. For instance, to create an environment with the IPython notebook and NumPy 1.6, which is older than the version that comes with Anaconda by default, you would run

$ conda create -n numpy16 ipython-notebook numpy=1.6

This creates an environment called numpy16 with the latest version of the IPython notebook, NumPy 1.6, and their dependencies.

We can now activate this environment, use

# On Linux and Mac OS X
$ source activate numpy16

# On Windows
> activate numpy16

This puts the bin directory of the numpy16 environment in the front of the PATH, and sets it as the default environment for all subsequent conda commands.

To go back to the base environment, use

# On Linux and Mac OS X
$ source deactivate

# On Windows
> deactivate

Building Your Own Packages

You can easily build your own packages for conda, and upload them to, a free service for hosting packages for conda, as well as other package managers. To build a package, create a recipe. Package building documentation is available here. See for the recipes that make up the Anaconda Distribution and defaults channel. Conda-forge and Bioconda are community-driven conda-based distributions.

To upload to, create an account. Then, install the anaconda-client and login

$ conda install anaconda-client
$ anaconda login

Then, after you build your recipe

$ conda build <recipe-dir>

you will be prompted to upload to

To add your channel, or the channel of others to conda so that conda install will find and install their packages, run

$ conda config --add channels

(replacing username with the user name of the person whose channel you want to add).

Getting Help

The documentation for conda is at You can subscribe to the conda mailing list. The source code and issue tracker for conda are on GitHub.


Contributions to conda are welcome. See the contributing documentation for instructions on setting up a development environment.

You can’t perform that action at this time.