asdf – asdf-vm
可扩展的版本管理器,支持 Ruby、Node.js、Elixir、Erlang 等
关键指标一览
主题标签
README 详细介绍
asdf
 
Manage multiple runtime versions with a single CLI tool, extendable via plugins - docs at asdf-vm.com
asdf is a CLI tool that can manage multiple language runtime versions on a per-project basis. It is like gvm, nvm, rbenv & pyenv (and more) all in one! Simply install your language's plugin!
Why use asdf?
- single CLI for multiple languages
- consistent commands to manage all your languages
- single global config keeping defaults in one place
- single
.tool-versionsconfig file per project - support for existing config files
.node-version,.nvmrc,.ruby-versionfor easy migration - automatically switches runtime versions as you traverse your directories
- simple plugin system to add support for your language of choice
- shell completion available for common shells (Bash, Zsh, Fish, Elvish)
Documentation
Please head over to the documentation site for more information!
- Getting Started
- All Commands
- All Plugins
- Create a Plugin with our asdf-plugin-template
- asdf GitHub Actions
Contributing
See CONTRIBUTING.md in the repo or the Contributing section on the docs site.
Community & Questions
- FAQ
- : report a bug or raise a feature request to the
asdfcore team - : see existing Q&A for
asdf. Some of the core team watch this tag in addition to our helpful community
Ballad of asdf
> Once upon a time there was a programming language
> There were many versions of it
> So people wrote a version manager for it
> To switch between versions for projects
> Different, old, new.
>
> Then there came more programming languages
> So there came more version managers
> And many commands for them
>
> I installed a lot of them
> I learnt a lot of commands
>
> Then I said, just one more version manager
> Which I will write instead
>
> So, there came another version manager
> asdf version manager -
>
> A version manager so extendable
> for which anyone can create a plugin
> To support their favourite language
> No more installing more version managers
> Or learning more commands
This was the mail I wrote to a few friends to tell them about the project. Thanks to @roshanvid for suggesting that this go into the readme
@HashNuke