Grunt js установка пакетов
Я создаю проект grunt javascript с grunt, и у меня есть файл package.json, который выглядит примерно так:
{
... name, author, etc here ...
"dependencies": {
"grunt-html":"0.2.1"
}
}
Я могу запустить npm install
для установки grunt-html, и это работает отлично. Но когда я добавляю новые зависимости, все разработчики в команде должны знать, чтобы снова запустить npm install
. Есть ли способ автоматически установить пакеты, которые еще не установлены? Должен ли я просто запускать npm install всегда, чтобы убедиться, что я в курсе?
Ответы
Ответ 1
Да npm install
- самый простой способ ИМО. Знакомство с другими командами npm
также облегчает управление папками. Например:
-
npm ls
, чтобы отобразить установленные модули.
- Или флаг
--save
, т.е. npm install grunt-html --save
для установки и вставки пакета и версии в ваш package.json
.
-
npm prune
для удаления модулей, не включенных в ваш package.json
.
Другими способами управления зависимостями являются фиксация папки node_modules
в вашем репозитории, чтобы другие разработчики не могли запускать npm install
. Или для более сложных проектов рассмотрите возможность использования npm shrinkwrap
для блокировки зависимостей для определенных версий: npm shrinkwrap docs.
Ответ 2
Я не пробовал использовать зависимости grunt-install (https://github.com/ahutchings/grunt-install-dependencies), но, похоже, это может удовлетворить ваши потребности. Просто добавьте зависимости для установки в качестве первой задачи в своих пользовательских определённых параметрах grunt tasts, например.
grunt.registerTask('build', ['install-dependencies', 'useminPrepare',...]);