Versões
Hi, we've recently migrated our docs and added some new pages. If you would like to help translate this page, see the "Edit this page" link at the bottom of the page.
Instalar Versão
asdf install <name> <version>
# asdf install erlang 17.3
Se um plugin suporta o download e compilação do código-fonte, você pode especificar ref:foo
no qual foo
é uma 'branch' especifica, 'tag', ou 'commit'. Você também precisará usar o mesmo nome e referência ao desinstalar.
Instalar última versão estável
asdf install <name> latest
# asdf install erlang latest
Instale a última versão estável que inicia com um texto.
asdf install <name> latest:<version>
# asdf install erlang latest:17
Listar versões instaladas
asdf list <name>
# asdf list erlang
Limite as versões que inicie com um determinado texto.
asdf list <name> <version>
# asdf list erlang 17
Listar todas as versões disponíveis
asdf list all <name>
# asdf list all erlang
Limite as versões que inicie com um determinado texto.
asdf list all <name> <version>
# asdf list all erlang 17
Mostrar última versão estável
asdf latest <name>
# asdf latest erlang
Mostrar última versão estável que inicie com um determinado texto.
asdf latest <name> <version>
# asdf latest erlang 17
Selecionar versão atual
asdf global <name> <version> [<version>...]
asdf shell <name> <version> [<version>...]
asdf local <name> <version> [<version>...]
# asdf global elixir 1.2.4
asdf global <name> latest[:<version>]
asdf local <name> latest[:<version>]
# asdf global elixir latest
global
escreve a versão para $HOME/.tool-versions
.
shell
selecione a versão na variável de ambiente ASDF_${LANG}_VERSION
, para a atual seção do shell.
local
escreve a versão para $PWD/.tool-versions
, crie se necessário .
Veja em .tool-versions
arquivo de seleção de configuração para mais detalhes.
Alternativa
Se você quiser selecionar a versão atual do seu shell ou para executar um comando em uma versão específica de sua ferramenta, você pode selecionar a versão na variável de ambiente ASDF_${TOOL}_VERSION
.
O seguinte exemplo executa os testes em um projeto Elixir na versão 1.4.0
. O formato da versão é o mesmo suportado pelo arquivo .tool-versions
.
ASDF_ELIXIR_VERSION=1.4.0 mix test
Resposta do sistema de versão
Para usar o sistema de versão da ferramenta <name>
inicie um gerenciador de versões do asdf para selecionar a versão na ferramenta do system
.
Selecione o sistema com global
, local
ou shell
Set system with either global
, local
or shell
conforme descrito em Selecionar versão atual.
asdf local <name> system
# asdf local python system
Verificar a versão atual
asdf current
# asdf current
# erlang 17.3 (set by /Users/kim/.tool-versions)
# nodejs 6.11.5 (set by /Users/kim/cool-node-project/.tool-versions)
asdf current <name>
# asdf current erlang
# 17.3 (set by /Users/kim/.tool-versions)
Desinstalar versão
asdf uninstall <name> <version>
# asdf uninstall erlang 17.3
Shims
Quando asdf instala um pacote é criado shims para cada programa executado no pacote do diretório $ASDF_DATA_DIR/shims
(padrão ~/.asdf/shims
). Esse diretório começa no $PATH
(pelos asdf.sh
, asdf.fish
, etc) é como o programa instalado é disponibilizado no ambiente do sistema.
Os shims em si são atalhos simples que executam um programa auxiliar asdf exec
passando o nome do plugin e o caminho para o executável no pacote instalado que o shim está contido.
O asdf exec
ajuda a determinar a versão do pacote usado (como especificado no arquivo .tool-versions
, pelo asdf local ...
ou asdf global ...
), o final do path do executavél no pacote instalado no diretório (pode ser manipulado pelo exec-path
no callback do plugin) e o ambiente executado em (também fornecido pelo plugin - exec-env
) e finalmente executado.
Observação
Observe que, como este sistema usa chamadas exec
, qualquer scripts no pacote devem ser fornecidos pelo shell, a instancia em execução precisa ser aessado diretamente ao invés do shim. Os dois comandos do asdf: which
e where
pode ajudar com o retorno do caminho para o pacote instalado:
# retorna o 'path' da versão atual em execução
source $(asdf which ${PLUGIN})/../script.sh
# retorna o 'path' do pacote instalado no diretório
source $(asdf where ${PLUGIN} $(asdf current ${PLUGIN}))/bin/script.sh
Ignorando shims do asdf
Se por algum motivo você deseja ignorar shims do asdf ou deseja que suas variáveis de ambiente sejam definidas automaticamente ao entrar no diretório do seu projeto, pode ser útil o asdf-direnv. Verifique o README para mais detalhes.