Как автоматизировать миграцию основных функций из основного проекта в проекты-клоны - PullRequest
0 голосов
/ 21 июня 2019

У меня есть один основной проект (продукт) в угловой.Я поддерживаю свой репозиторий на github.Каждый раз, когда приходит новый клиент для этого продукта, мы создаем клон основного проекта и добавляем настройки в соответствии с требованиями клиента.

Теперь проблема в том, что всякий раз, когда в компонентах основного проекта происходит некоторое изменение кода, мы должны вручную копировать эти изменения в проекты-клоны.Допустим, у нас есть 100 проектов, тогда мы должны скопировать небольшое изменение кода в 100 проектов.Есть ли способ, которым я могу автоматизировать это, как каждый раз, когда есть некоторые изменения в компонентах основного проекта, он автоматически переносится в проекты-клоны?

Я проверил работу библиотек npm.Он загружает все зависимости в node_modules.Я не уверен, смогу ли я достичь своей цели, используя это.Но, пожалуйста, дайте мне знать, если это возможно, используя npm и как.

1 Ответ

0 голосов
/ 21 июня 2019

Самое близкое решение, которое я могу придумать, - это создать общий угловой модуль или угловую 6 библиотеку из вашего основного проекта и опубликовать его.Для каждого нового углового проекта клиента импортируйте в него свою базовую угловую библиотеку и используйте ее.Таким образом, вы можете обновлять свою базовую библиотеку в любое время, и вам нужно будет только запустить npm update для всех проектов, использующих библиотеку

И, конечно же, вам нужно будет немного изменить архитектуру вашего основного проекта, чтобысделать его многоразовой библиотекой.Вам нужно будет создать общие повторно используемые компоненты, директивы, сервисы, каналы и т. Д. И экспортировать их.

Кроме того, существуют ограничения на то, какие изменения вы можете вносить в базовую библиотеку, что потребует только «обновления npm».в других проектах, чтобы отразить изменение

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...