Скажем, у меня четыре проекта с именем Core, A, B, Супер. Дерево зависимостей выглядит так:
Super ---> Core
|-> A -> Core
|-> B -> Core
Я хочу, чтобы каждый проект был автономным, т.е. я хотел бы иметь возможность проверять и компилировать каждый проект сам по себе (каждый со своими зависимостями, конечно).
Я думал о сопоставлении каждого проекта в репозитории, а затем ссылался на зависимости с подмодулями, но я вижу следующие проблемы с этим подходом:
- При проверке Супер со всеми его зависимостями я получаю три копии Core.
- Поскольку подмодули полностью независимы, каждая из этих трех копий может указывать на разные версии Core, и это будет беспорядок.
Итак... Я что-то упустил? Не понял ли я подмодулей git или неправильно использовал их? Есть ли другое решение этой проблемы (кроме использования двоичных зависимостей)?