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