Установка и использование менеджера пакетов Yarn на Linux
Yarn — это мощный менеджер пакетов для JavaScript, разработанный для упрощения и повышения эффективности управления зависимостями. Изначально разработанный Facebook, он стал популярным благодаря своей скорости и надежности по сравнению с другими менеджерами пакетов, такими как npm (Node Package Manager). В этой статье вы узнаете, как установить Yarn на Linux, как его использовать и в чем основные различия между Yarn и npm (включая плюсы и минусы).
Установка Yarn на Linux
Yarn можно установить на различных дистрибутивах Linux. Ниже приведены распространенные методы установки.
Метод 1: Установка Yarn с помощью APT
Это самый распространенный способ установки Yarn на системах на базе Debian.
- Обновите список пакетов:
sudo apt update - Установите необходимые зависимости: Если curl не установлен, установите его:
sudo apt install curl - Добавьте репозиторий Yarn APT:
curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | sudo gpg --dearmor -o /etc/apt/keyrings/yarn.gpg echo "deb [signed-by=/etc/apt/keyrings/yarn.gpg] https://dl.yarnpkg.com/debian/ stable main" | sudo tee /etc/apt/sources.list.d/yarn.list - Снова обновите список пакетов:
sudo apt update - Установите Yarn:
sudo apt install yarn - Проверьте установку:
yarn --version
Метод 2: Установка Yarn с помощью npm
Если Node.js и npm уже установлены, вы можете установить Yarn через npm:
- Установите Node.js и npm (если не установлены):
sudo apt install nodejs npm - Установите Yarn глобально с помощью npm:
npm install --global yarn
Использование общих команд Yarn
- Инициализация нового проекта: Перейдите в каталог вашего проекта и выполните:
yarn initСледуйте инструкциям для создания файла package.json.
- Добавить зависимость:
yarn add package-name - Добавить зависимость для разработки:
yarn add package-name --dev - Удалить зависимость:
yarn remove package-name - Установить все зависимости: Если у вас есть package.json, установите зависимости с помощью:
yarn install - Обновить зависимость:
yarn upgrade package-name
Запуск скриптов
Yarn также может запускать скрипты, определенные в package.json:
yarn run script-name
Yarn против npm: различия, плюсы и минусы
Ключевые различия
- Lockfiles:
- Yarn: Использует yarn.lock для блокировки версий зависимостей, что помогает обеспечить согласованную установку в разных средах.
- npm: Внедрил аналогичный механизм в npm 5 с package-lock.json.
- Скорость установки:
- Yarn: Часто быстрее благодаря параллельным установкам и кэшированию.
- npm: Исторически медленнее, но значительно улучшился в новых версиях.
- Команды CLI:
- Многие команды похожи, но Yarn включает уникальные команды, такие как yarn upgrade-interactive для интерактивных обновлений.
- Рабочие пространства:
- Yarn: Поддерживает рабочие пространства для управления монорепозиториями.
- npm: Добавил поддержку рабочих пространств в npm 7.
Yarn: плюсы и минусы
Плюсы:
- Скорость: Быстрее установки благодаря кэшированию и параллелизму.
- Детерминированные установки: Согласованные установки в разных средах с использованием yarn.lock.
- Удобный CLI: Часто считается более интуитивно понятным с лучшим выводом.
- Рабочие пространства: Встроенная поддержка управления монорепозиториями.
Минусы:
- Зависимость от Node.js: Node.js должен быть установлен перед использованием Yarn.
- Кривая обучения: Новым пользователям может потребоваться время, чтобы привыкнуть к различиям по сравнению с npm.
npm: плюсы и минусы
Плюсы:
- Широкое распространение: Входит в комплект с Node.js, что делает его широко используемым и хорошо поддерживаемым.
- Зрелая экосистема: Большое сообщество и обширные ресурсы по устранению неполадок.
- Простота: Знаком большинству разработчиков JavaScript.
Минусы:
- Скорость: Исторически медленнее, чем Yarn, хотя недавние обновления улучшили производительность.
- Менее детерминированные (исторически): До npm 5 установки могли варьироваться в разных средах без lockfile.
Заключение
Yarn — это мощный менеджер пакетов, который предлагает функции, направленные на улучшение рабочего процесса разработки JavaScript. Благодаря своей скорости, детерминированным установкам и удобным командам он стал популярным выбором среди разработчиков. Хотя npm остается широко используемым и продолжает развиваться, выбор между Yarn и npm часто сводится к личным или командным предпочтениям. Поняв сильные и слабые стороны обоих, вы сможете принять более обоснованное решение о том, какой менеджер пакетов лучше всего соответствует потребностям вашего проекта.
