Восстановление пакетов npm с помощью gulp

Я использую Visual Studio и TypeScript для разработки веб-приложения. Есть что-то довольно основное, что я не понимаю.

Я не хочу проверять все модули узлов в моем исходном элементе управления (это много файлов, и я не хочу загрязнять мой репозиторий с помощью внешних обновлений кода). Поэтому я хочу иметь возможность восстановить их, прежде чем строить. Я нашел онлайн, что gulp-install может использоваться для восстановления пакетов. Однако gulp-install – это сам пакет, поэтому как его можно использовать?

В учебном пособии по глотку сказано, что сам глоток должен быть установлен как глобально, так и локально. Я предполагаю, что глобальная установка позволяет запускать файл gulp, даже если остальных пакетов нет. Но как насчет остальных? gulp-install не упоминает, что он должен быть установлен глобально. Теперь я могу написать событие pre-build, которое запускает nmp install, но тогда все пакеты будут установлены, поэтому я не понимаю, что gulp-install подходит для …

Так что я действительно спрашиваю, каков правильный и предполагаемый способ совместного использования gulp-install и source control.

Solutions Collecting From Web of "Восстановление пакетов npm с помощью gulp"

«Я мог бы написать событие предварительной сборки, которое запускает npm install» – это то, что вы хотите. Переход на маршрут gulp-install требует, чтобы все пользователи уже имели глобальную установку gulp. Благодаря установке gulp вы можете вытащить из других менеджеров пакетов за один вызов, а не просто нажимать npm, но, как вы сказали, вам нужно будет установить gulp где-то уже, чтобы он работал прямо из источника. Вы также МОЖЕТЕ проверить в локальной установке npm gulp, если хотите.

Я не знаю, понимали ли авторы gulp и / или gulp-install, но это то, что я закончил: я установил пакет NuGet с именем npm.js, который зависит от Node.js и запускает npm install перед зданием. Минимальная версия Node.js, от которой она зависит, устарела, но есть новый пакет Node.js, который вы можете установить и получить вам узел 5.3.0. Если мне понадобится новая версия узла, я попрошу автора создать новый пакет или сделать это самостоятельно.

Поэтому я не использовал gulp-install, а установил все пакеты узлов с помощью NuGet.

Это решение работает для меня, потому что NuGet – это то, что мне не нужно устанавливать – оно всегда присутствует как в среде разработки, так и на серверах сборки, поэтому решение полностью автономно и не зависит от каких-либо новых установок.