На самом деле ваш вопрос можно резюмировать следующим образом: должен ли я использовать подход моно-репо или подход мульти-репо?
Это широкая тема, но для простоты: это зависит от уровня связи и жизненного цикламежду этими проектами.
Вы хотите использовать подход моно репо и добавлять несколько проектов, если эти проекты предназначены для совместной жизни и развития. Например, если только эти проекты имеют зависимость между ними и что при изменении зависимости вы измените потребителя, у вас явно не будет смысла разбивать их на несколько репозиториев.
Это сделает читаемость исходного кода на глобальном уровне более слабой и фиксированной. / pull / request / merge для нескольких репозиториев для одного и того же варианта использования, что делает их читабельность и их согласованность более слабыми.
Вы хотите использовать подход с несколькими репо и иметь проект репо, если эти проекты не предназначены для совместной жизни и развития. Например, если некоторые из этих проектов используются другими приложениями, чем те, которые вы цитируете, у вас нет никакого смысла связывать зависимость проекта внутри хранилища потребительского проекта, потому что есть другие потребители, так почему этот потребитель, а не другой?
У вас также есть метод супер моно репо , такой как тот, который используется Google или Facebook, который добавляет все проекты (или почти) в одном и том же хранилище, независимо от того,уровень связи между проектами. Делать это непросто и требует тонкой настройки инструментов CDCI и SCM, чтобы сохранить практичность и простоту, несмотря на размер репо.