Субмодульные зависимости и проекты Visual Studio - Создание архитектуры с нелинейными зависимостями - PullRequest
0 голосов
/ 10 октября 2019

не уверен, что это должно быть при переполнении стека, но у меня в настоящее время есть проблема при создании архитектуры для моего проекта C #.

Основная структура

Существует три репозитория:

  • хранилище данных
  • разбор (по существу, заполнение хранилища данных)
  • работа (с использованием хранилища данных)

working хранилищу данных требуется хранилище в виде проекта (включается в подмодуль git).

хранилищу parsing также требуется хранилище данных в виде проекта (включается в подмодуль git).

Репозиторий data storage не зависит от всех других репозиториев.


Цель

A четвертый репозиторий создан с использованием репозитория parsingи working хранилище. Обратите внимание, что оба репозитория зависят от data storage репозитория

The Catch

Что, если репозиторий parsing зависит от другой версии репозитория data storage, чемworking хранилище. Мы не хотим, чтобы это случилось.

Вопрос

Как запретить любому пользователю включать оба проекта в Visual Studio Professional или Git, если версия подмодуля data storage отличается. Как бы вы структурировали свои репозитории? Вы бы включили хранилище data storage в качестве подмодуля в обоих хранилищах или включили бы только .dll?

1 Ответ

0 голосов
/ 17 октября 2019

Мы решили объединить их все в один репозиторий.

Возможные варианты:

  • удаление всех подмодулей и оставление ложных ссылок -> Пользователь имеетустановить для них перекрестные ссылки самостоятельно

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

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