Хорошая настройка проекта для многочастного проекта с Git и Node / Npm - PullRequest
0 голосов
/ 05 октября 2018

В настоящее время я планирую проект, который будет состоять из 3 разных частей: сервера Restful, веб-сайта и настольного приложения.Это будет мой первый опыт такого большого проекта с использованием node / npm, и я не уверен, как настроить каталоги проектов.

Например, лучше ли хранить все в одном каталоге Git с собственным пакетом npm?(для общего контроля над такими вещами, как gulp), а затем здесь папка для каждой части внутри каждой со своим собственным package.json.Или лучше считать каждую часть в своем Git и менеджере пакетов?Или какие-либо другие настройки, которые могут быть использованы?

Моя текущая мысль состоит в том, чтобы разделить сервер и интерфейс на два разных репозитория для использования при передаче на VPS в разные места, но между ними будет общий код (в основном, файлы классов), и я не знаю, как лучшесправиться с этим.

1 Ответ

0 голосов
/ 05 октября 2018

Я думаю, что это в основном личное решение.

Мой подход заключается в том, чтобы сделать 5 репо:

  • Репозиторий для родителей
  • Shared
  • Отдых
  • Домашняя страница
  • Приложение

Затем вы можете объединить все репозитории, используя подмодули git.Это дает вам отдельную историю / лучший обзор по каждой части проекта, сохраняя при этом удобство извлечения / извлечения только один раз.

(Подробнее о подмодулях: git документации )

Чтобы сделать общий код действительно независимым, неплохо было бы физически разделить его на отдельный репозиторий git и ссылаться на него через npm.

Таким образом, структура каталогов может выглядеть следующим образом:

| MyApp
|--- .git
|--- Configuration files/global stuff not directly related to the parts of the project (e. g. build config for all projects, editor config)
|--- Shared
     |--- .git
     |--- package.json
     |--- Source Files etc.
|--- Rest
     |--- .git
     |--- package.json
     |--- Source Files etc.
|--- App
     |--- .git
     |--- package.json
     |--- Source Files etc.
|--- Website
     |--- .git
     |--- package.json
     |--- Source Files etc.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...