2016-01-03 2 views
0

Я запускаю npm в своей локальной среде. Если я запустил npm install в своей локальной среде, он установит несколько пакетов в node_modules/, и все будет хорошо.npm устанавливает другой пакет на сервере vs localhost

Затем я вывожу последние изменения на сервере удаленного сервера и попробую запустить gulp и получить некоторые ошибки. Так я бегу следующее:

rm -rf node_modules npm install gulp

и все работает правильно. Но, конечно, целая куча предметов в node_modules изменилась. Итак, я делаю git push с сервера, а затем вытаскиваю локально. Но теперь моя локальная сборка не будет работать gulp, и мне нужно будет повторить описанный выше процесс (удалите node_modules, npm install).

Похоже, что npm install устанавливает несколько разных пакетов в моей локальной среде и среде сервера, несмотря на то, что они оба Ubuntu 14.04. Версия nodejs для сервера и локальной сети также совпадает с v5.3.0.

+3

Не заходите в 'node_modules' в свой репозиторий git! Это всегда вызовет некоторые проблемы между различными средами, а общий - скомпилированный собственный код между Mac OS X и Linux. Если вы хотите убедиться, что те же версии модулей будут использоваться для каждой установки «npm», прибегают к [npm-shrinkwrap] (https://docs.npmjs.com/cli/shrinkwrap). – bardzusny

+0

Согласны, мы используем Shrinkwrap для решения таких проблем. –

ответ

0

Как было предложено, мы не проверяем node_modules. Поэтому мы запускаем npm install и gulp на сервере.