Могу ли я удалить package-lock.json при переходе на pnpm?
Я сейчас перехожу с npm
к pnpm
, который имеет другой набор функций, которые я предпочитаю.
Первый использует package-lock.json
чтобы заблокировать точные версии пакетов, последние pnpm-lock.yaml
.
Согласно документам,pnpm
игнорирует package-lock.json
, который кажется лишним. И, как следствие, при обновлении пакетов сpnpm
, этот файл вообще не будет обрабатываться и скоро станет устаревшим.
Могу ли я безопасно удалить package-lock.json
или у меня возникнут какие-то проблемы? Могли ли быть какие-то недостатки в удалении этого файла из моего проекта?
я использую npm
только для получения инструментов и пакетов, необходимых для моих проектов (например, Gulp), а не для публикации пакетов на https://www.npmjs.com/
1 ответ
Если вы используете pnpm, вы можете удалить package-lock.json
(а также yarn.lock
если вы переходите с Yarn). Если вам нужно сохранить некоторые зависимости от вашего старого файла блокировки, вы можете запуститьpnpm import
и pnpm сгенерирует файл блокировки, используя информацию из package-lock.json.
pnpm создаст собственный файл блокировки. файл блокировки pnpm называетсяpnpm-lock.yaml
. Вы должны зафиксировать этот файл в репозитории.
Если у вас есть CI-сервер, вам также придется использовать pnpm на CI-сервере для установки зависимостей. Вот несколько инструкций, как это сделать.