Скажем, у меня есть 5 проектов git, которые взаимозависимы друг от друга:
- База данных (разговаривает с сервером ниже)
- Сервер рендеринга (разговаривает с сервером ниже)
- Основной сервер приложений (REST API)
- Запуск: скрипты и json для сборки вышеуказанных машин Amazon 4 EC2.
- Тесты: запуск на сервере приложений
- Javascript API (зависит от REST API)
- Документация по JS и REST API (зависит от REST API)
Я предполагаю, что описанное выше подразделение проектов git на практике превратилось в параллельную организацию рабочего процесса.
Проблема в том, что успех всей системы зависит от уверенности в том, что вышеупомянутые 7 проектов непротиворечивы и непротиворечивы друг с другом.
С одной стороны, проще представить изменение во всей системе, сравнив хеш time_1 SHA-1 только одного проекта с хэшем time_2 SHA-1 того же проекта.
С другой стороны, я прочитал эти Ответы SO, в которых упоминается стоимость сложности группировки слишком большого количества проектов. Кроме того, Линус также упоминает гибкость системы git, позволяющую даже использовать ветки для разных проектов, а также возможность переключения стратегии группировки позднее (но мы не будем использовать этот подход, поскольку мы новички, избегающие риска).
Приветствуются любые советы или рекомендации, которые учитывают предприятие с высоким операционным риском и низким профессиональным опытом.