2015-12-10 1 views
2

Вопрос 1: Я устанавливаю свои библиотеки зависимостей проектов, используя npm, и он сохраняется в папке npm_modules. Нужно ли хранить копию библиотеки, как angular.js, angular-route.js в lib или продавец папка? Я видел, что несколько человек используют папку lib или vendor папки для хранения библиотеки в постоянном порядке. Я смущен, увидев это.Должен ли я хранить копию библиотеки js в папке lib или vendor, хотя она уже установлена ​​с использованием npm?

Вопрос 2: мне нужно скопировать/вставить node_modules папку для производства или просто запустить npm install команду в командной строке в папке проекта, чтобы установить все зависимости в производстве ли. Как получить библиотеку зависимостей для производства?

Благодарим вас за ваш совет.

ответ

3

Все зависит от того, как вам нужно развернуть свой сайт на производстве. В конечном счете, вы, вероятно, захотите получить комплект всех ваших JS-файлов в один или несколько файлов, которые минимизируются и отправляются с сжатием gzip.

Как вы их связываете, зависит от вас. Есть довольно много вариантов:

  • Browserify
  • Webpack
  • Grunt процесс сборки/глотком
  • И еще много, кроме

Как нужно ли сохранить копию этих вложенные файлы javascript под управлением версиями, я думаю, что это сводится к одному ключевому вопросу: можете ли вы запустить процесс сборки (например, один из инструментов с помощью NodeJS) на рабочем сервере или на сервере сборки, который создает zip-файл или ины выше? Если это так, то вам не нужно включать их, просто запустите сервер сборки или производственный сервер, чтобы проверить последнюю копию с помощью управления версиями, npm install, а затем запустите процесс сборки.

Но если самое лучшее, что вы могли бы сделать, это сделать производственный сервер проверять файлы из исходного элемента управления, тогда вы захотите включить окончательные версии файлов для использования в репозитории.

Сохранение сгенерированных файлов, таких как ваши вложенные файлы javascript, в вашем исходном контрольном репо следует избегать, где это возможно. Поскольку в противном случае каждая фиксация должна содержать изменения исходных файлов и соответствующее изменение к сгенерированным файлам. И последнее - это просто шум, и каждый разработчик должен игнорировать его, рассматривая diff/patch для фиксации.

 Смежные вопросы

  • Нет связанных вопросов^_^