Magic per-project shell environments. Very pretentious.
If a directory contains a .env
file, it will automatically be executed
when you cd
into it.
This is great for...
- auto-activating virtualenvs
- project-specific environment variables
- making millions
Foreman env files are completely compatible.
You can also nest envs within eachother. How awesome is that!?
Follow the white rabbit:
$ touch project/.env $ echo "echo 'woah'" > project/.env $ cd project woah
Install it easily:
$ brew install autoenv $ echo 'source /usr/local/opt/autoenv/activate.sh' >> ~/.bash_profile
$ pip install autoenv $ echo "source `which activate.sh`" >> ~/.bashrc
$ git clone git://github.com/kennethreitz/autoenv.git ~/.autoenv $ echo 'source ~/.autoenv/activate.sh' >> ~/.bashrc
Autoenv overrides cd
. If you already do this, invoke autoenv_init
within your custom cd
after sourcing activate.sh
.
Autoenv can be disabled via unset cd
if you experience I/O issues with
certain file systems, particularly those that are FUSE-based (such as
smbnetfs
).
Install the test runner:
$ make gem install dtf --version 0.1.2 Successfully installed dtf-0.1.2
Test:
$ make test dtf tests/* ............ ##### Processed commands 14 of 14, success tests 12 of 12.