LinuxCommandLibrary

asdf

Manage multiple runtime versions with a single tool

TLDR

Install a plugin

$ asdf plugin add [nodejs]
copy
List all plugins
$ asdf plugin list
copy
Install a version
$ asdf install [nodejs] [18.0.0]
copy
Set global version
$ asdf global [nodejs] [18.0.0]
copy
Set local version (project)
$ asdf local [nodejs] [18.0.0]
copy
List installed versions
$ asdf list [nodejs]
copy

SYNOPSIS

asdf command [plugin] [version]

DESCRIPTION

asdf is a universal version manager supporting multiple languages and tools through plugins. It provides a single interface for managing versions of Node.js, Python, Ruby, Go, and dozens of other tools.
Versions can be set globally, per-project (.tool-versions file), or per-shell session.

PARAMETERS

plugin add name

Install plugin
plugin list
List installed plugins
install plugin version
Install specific version
uninstall plugin version
Remove version
global plugin version
Set global default
local plugin version
Set project version
list plugin
List installed versions
list all plugin
List all available versions
current
Show current versions
reshim plugin
Rebuild shims

CONFIGURATION

~/.asdfrc

User configuration file for asdf settings like legacy version file support.
.tool-versions
Per-project file specifying tool versions. Placed in the project root directory.
~/.tool-versions
Global default tool versions used when no project-level file is found.

CAVEATS

Requires plugins for each tool. Shell initialization needed (~/.bashrc or ~/.zshrc). Shims may need rebuilding after installing new executables.

HISTORY

asdf was created by @HashNuke to provide a single version manager replacing language-specific tools like nvm, rbenv, and pyenv. Released around 2014.

SEE ALSO

nvm(1), rbenv(1), pyenv(1)

> TERMINAL_GEAR

Curated for the Linux community

Copied to clipboard

> TERMINAL_GEAR

Curated for the Linux community