Если вы пришли из мира JavaScript и Node.js, вы можете быть знакомы с очень похожим инструментом под названием NVM или Node Version Manager, который служит менеджером версий для Узел, как следует из названия.



Что ж, получается, что asdf — почти то же самое, но для любого языка программирования, который вы только можете себе представить.

asdf — это чрезвычайно полезный инструмент, который помогает вам управлять установкой и управлением версиями языков программирования, необходимых для ваших проектов разработки. >CLI с очень простыми командами для управления функциями этого замечательного инструмента.



Если вы не знаете, что такое CLI, я оставлю вам эту короткую статью, в которой вы сможете прояснить взгляды на эту тему.



С одним файлом конфигурации .tool-versions, который будет создан в каталоге, где вам нужно использовать этот язык, у вас есть все, что вам нужно, чтобы начать разработку проекта, который вы задумали.

Языки устанавливаются с помощью подключаемых модулей, которые можно найти в соответствующих репозиториях GitHub.



Монтаж

Поскольку в настоящее время я использую Manjaro и ZSH в качестве дистрибутива и оболочки Linux соответственно, я собираюсь показать вам шаги, которые необходимо выполнить, чтобы установить их с этим стеком, но не волнуйтесь, в начале работы asdf существуют и другие способы его установки в зависимости от вашей операционной системы, вашего дистрибутива и используемой вами оболочки.

Во-первых, мы установим пару зависимостей, которые нужны asdf для своей работы, это очень легко сделать с помощью вашего менеджера пакетов в любом дистрибутиве Linux или с помощью Homebrew для Mac, для Windows это можно сделать с помощью виртуальной машины или WSL.



Если вы используете дистрибутив Arch или его производную, например Manjaro, вы можете скомпилировать его напрямую.

git clone https://aur.archlinux.org/asdf-vm.git

cd asdf-vm

makepkg -si

Я ищу его с помощью Paru, учитывая используемую мной операционную систему.

В следующем посте я расскажу об этом замечательном помощнике AUR для всех дистрибутивов Linux на базе Arch.

paru asdf

Вы также можете использовать pacman для той же цели.

sudo pacman -Ss asdf

После установки в вашей системе каталог с именем /.asdf/ будет создан в доме вашего пользователя, который используется для asdf для настройки и установки, которые Вы заказываете.

$HOME/.asdf/

Вам нужно добавить следующее в файл конфигурации используемой вами оболочки, помните, что я использую ZSH, поэтому мне нужно перейти в ~/.zshrc и добавить эту строку в конец файла

. "$HOME/.asdf/asdf.sh"

Если вы не используете ZSH, вы можете увидеть все варианты здесь:



Пример

Очень хорошо, мы установим версию языка Ruby в качестве примера, помните, что вы можете выполнить следующие шаги, чтобы установить нужный вам язык и версию, фактически на asdf они делают пример с Node.



asdf plugin add ruby https://github.com/asdf-vm/asdf-ruby.git

Помните, что URL можно найти в официальном репозитории плагина для asdf.



Теперь вы можете просмотреть список версий, доступных для интересующего вас языка, и выбрать нужную версию из этого списка.

asdf list all ruby

Теперь установите нужную версию в вашей системе.

asdf install ruby 3.1.2

И в качестве последнего шага вам просто нужно решить, хотите ли вы использовать эту версию глобально или локально в вашей системе.

По сути, разница заключается в том, что когда вы устанавливаете версию глобально, она будет доступна во всей вашей системе независимо от того, в каком каталоге вы хотите ее запустить; в то время как локально вы устанавливаете его в один каталог, и только в этом каталоге вы можете использовать этот язык.

Глобальный — общесистемный, т. е. файл asdf будет установлен в $HOME/.tool-versions.

asdf global ruby 3.1.2

Локальный — только в каталоге вашей системы, т. е. файл asdf будет установлен в $PWD/.tools-versions.

asdf local ruby 3.1.2

Самые важные команды

  • См. плагины языков, которые вы установили
asdf plugin list

  • Обновите установленные вами плагины
asdf plugin update (plugin_name)
  • Удалите все плагины, которые вы установили в своей системе.
asdf plugin remove (plugin_name)

Заключение

Если вы разработчик программного обеспечения и любите пробовать разные языки программирования или вам нужна определенная версия для проекта вашего любимого языка, вам понравится этот инструмент.

Это очень просто: с помощью нескольких команд у вас уже будет установлен язык, который вы хотите, с нужной вам версией, а также это дает вам возможность иметь определенную версию языка по вашему выбору в разных каталогах.

Если вам нравится мой контент, рассмотрите возможность подписки и поддержки моей работы, поставив лайк, прокомментировав или поделившись этой или любой другой статьей, которую я написал.

Свяжитесь со мной



[email protected]

LinkedInGitHub