4125d2b556
We need to add trailing newlines to .tool-versions file before appending a new version to the file. The order of the checks was wrong here as the first check assumed the file existed, and the second checked if it did. Switching them fixes the issue. This fix was provided by @h3y6e Fixes #1417 |
||
---|---|---|
.github | ||
bin | ||
completions | ||
docs | ||
lib | ||
scripts | ||
test | ||
.editorconfig | ||
.gitattributes | ||
.gitignore | ||
.tool-versions | ||
asdf.elv | ||
asdf.fish | ||
asdf.nu | ||
asdf.sh | ||
ballad-of-asdf.md | ||
CHANGELOG.md | ||
CONTRIBUTING.md | ||
defaults | ||
help.txt | ||
LICENSE | ||
README.md | ||
SECURITY.md | ||
version.txt |
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-versions
config file per project - support for existing config files
.node-version
,.nvmrc
,.ruby-version
for 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
- GitHub Issues: report a bug or raise a feature request to the
asdf
core team - StackOverflow Tag: 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 themI installed a lot of them
I learnt a lot of commandsThen I said, just one more version manager
Which I will write insteadSo, there came another version manager
asdf version manager - https://github.com/asdf-vm/asdfA 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