volta pin
Команда volta pin
обновляет файл package.json
проекта для использования выбранной версии инструментов. Имеет следующий синтаксис:
Закрепляет среду выполнения или пакетный менеджер вашего проекта
Использование:
volta pin [FLAGS] <tool[@version]>...
ФЛАГИ:
--verbose Включить подробную диагностику
--quiet Предотвратить ненужный вывод
-h, --help Напечатать справочную информацию
АРГУМЕНТЫ:
<tool[@version]>... Инструменты для закрепления, такие как `node@lts` или `yarn@^1.14`.
Примечание
volta pin
работает только с Node и пакетными менеджерами (например, npm или Yarn). Для зависимостей вы должны использоватьnpm install
илиyarn add
для обновления выбранной версии.
Примеры
Закрепление Node.js
# Закрепить последнюю LTS версию Node
volta pin node
# Закрепить конкретную версию Node
volta pin node@16.14.2
# Закрепить диапазон версий Node
volta pin node@16
Когда вы закрепляете версию Node.js, Volta добавляет секцию volta
в файл package.json
проекта:
{
"volta": {
"node": "16.14.2"
}
}
Закрепление пакетных менеджеров
# Закрепить последнюю версию npm
volta pin npm
# Закрепить конкретную версию Yarn
volta pin yarn@1.22.19
# Закрепить pnpm (если включён флаг функции)
VOLTA_FEATURE_PNPM=1 volta pin pnpm@7.0.0
Закрепление пакетных менеджеров добавляет их в секцию volta
в package.json
:
{
"volta": {
"node": "16.14.2",
"npm": "8.5.0"
}
}
Случаи использования
Команда volta pin
критически важна для:
- Создания согласованных сред разработки в вашей команде
- Обеспечения использования одинаковой версии Node.js и пакетного менеджера всеми, кто работает над проектом
- Предотвращения проблем "работает на моей машине"
- Документирования, с какой версией Node.js совместим ваш проект
Эффект закрепления
Когда вы закрепляете инструменты:
- Он автоматически устанавливается, если у вас его ещё нет
- Версия записывается в секцию
volta
файлаpackage.json
- Любой, кто использует Volta для работы над проектом, будет автоматически использовать указанную версию
- CI/CD системы, использующие Volta, будут использовать правильную версию
Закреплённые инструменты имеют приоритет над версиями инструментов по умолчанию, установленными с помощью volta install
.
Детали package.json
Секция volta
в package.json
может включать:
{
"volta": {
"node": "16.14.2", // Точная версия
"npm": "^8.5.0", // Semver диапазон
"yarn": "1.22.19", // Точная версия
"pnpm": "7.0.0" // Если включена поддержка pnpm
}
}
Спецификаторы версий могут быть:
- Точной версией:
16.14.2
- Основной версией:
16
- Основной.младшей версией:
16.14
- Semver диапазоном:
^16.14.0
- Тегом:
lts
,latest