Extendable version manager with support for Ruby, Node.js, Elixir, Erlang & more
Go to file
2015-05-08 11:32:07 +05:30
bin Simpler entry 2015-05-08 11:28:28 +05:30
commands Move commands to separate files 2015-05-08 11:28:07 +05:30
docs Smaller font 2015-03-03 21:32:48 +05:30
lib TODO move out reshim and exec commands 2015-05-08 11:32:07 +05:30
.gitignore Add reshim command 2014-12-14 13:43:43 +05:30
ballad-of-asdf.md Update readme 2014-12-01 09:02:14 +05:30
help.txt Change help 2015-05-08 11:31:20 +05:30
README.md Fix commands in readme 2015-05-06 18:54:26 +05:30

asdf

extendable version manager

Feel free to add support for the language you want. There is a simple API for it. For now, I've added support for the following languages:

-- @HashNuke

Support via Gratipay


Install

Copy-paste the following into command line:

git clone https://github.com/HashNuke/asdf.git ~/.asdf
echo 'export PATH="$HOME/.asdf/bin:$HOME/.asdf/shims:$PATH"' >> ~/.bash_profile

That's all ~! You are ready to use asdf

It clones the adsf-related dirs to your $PATH in ~/.bash_profile. If you use a different shell, replace the filename appropriately.

Manage sources

Sources are how asdf understands how to handle packages.

Add a package

# asdf source-add <name> <git-url>
asdf add-source erlang https://github.com/HashNuke/asdf-erlang.git

Remove a source

# asdf source-remove <name>
asdf remove-source erlang

Update sources

# To update all sources
asdf update-source --all

If you want to update a specific package, just say so.

# asdf source-update <name>
asdf update-source erlang

Manage packages

# asdf install <name> <version>
asdf install erlang 17.3

# asdf uninstall <name> <version>
asdf uninstall erlang 17.3

Lists installed versions

# asdf list <name>
asdf list erlang

List all available versions

# asdf list-all <name>
asdf list-all erlang

Use a specific version of a package

# asdf use <name> <version>
asdf use erlang 17.3

It writes the version to the .versions file in the current working directory.

The .versions file

Add a .versions file to your project dir and versions of those packages will be used.

elixir 1.0.2
erlang 17.3

Credits

Me (@HashNuke), High-fever, cold, cough.

Copyright 2014 to the end of time


Read the ballad.