Как легко интегрировать несколько репозиториев Git и создать сборку, возможно, с использованием файла конфигурации и развернуть ее для веб-интерфейса? - PullRequest
0 голосов
/ 11 июля 2019

Мы пытаемся организовать кодовую базу одного Python Project P1 на Git следующим образом. Проект для обработки документов. В документе может быть несколько стандартов (вариантов), поэтому требуются разные подходы к обработке, но общность всех стандартов - это тип обрабатываемых компонентов, который всегда остается одним и тем же.

Бэкэнд находится в репозитории интеграции, в котором есть основной модуль и сценарии оболочки для запуска и обработки каждого типа компонента независимо от стандарта. Он имеет только ветвь MASTER, которая действует как скелет и обеспечивает функциональность верхнего уровня проекта. Мы не собираемся менять код в этом MASTER для любой сборки.

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

Backend взаимодействует с 4-компонентными репозиториями, которые являются репозиториями разработки. Каждый репо (A, B, C, D) независимо обрабатывает определенный компонент документа. Под каждым компонентом репо, как видно, есть МАСТЕР и еще 3 ветви (В1, В2, В3). Каждая ветвь соответствует каждому стандарту документа и Под каждой веткой код ведется в некоторых папках (1,2,3) для обозначения этапов разработки. Ветви MASTER каждого репозитория компонентов содержат фиксированный набор кодов, который редко изменяется и предназначен для поддержки разработки, поэтому он очень стабилен. Код на MASTER должен использоваться во всех стандартах без изменений. Только код в ветвях B1, B2 или B3 будет интегрирован для развертывания.

Сборка : Чтобы сделать сборку, нам, вероятно, понадобится файл конфигурации, чтобы указать путь интеграции, такой как Repo A: B2: F3 + Repo B: B2: F1 + Repo C: B2: F1 + Repo D: В2: F2. Действительно, некоторые репо будут более активными, чем другие, в зависимости от объема обработки.

  1. Я хочу знать, эффективен ли этот тип структуры Git для интеграции нескольких репозиториев и построения? Стандарты будут увеличиваться в будущем, равно как и объем обработки.
  2. Может ли быть какая-то другая структура или стратегия для достижения того же самого?
  3. С какими вещами я должен быть осторожен в долгосрочной перспективе и каковы могут быть недостатки этой стратегии, если я хочу полностью автоматизировать развертывание?

Framework for multiple Git repositories integration

...