В настоящее время я работаю на своем рабочем месте, чтобы улучшить настройку нашего проекта.У нас есть несколько проектов / продуктов, в то время как некоторые из них имеют зависимости друг от друга, а другие нет.
Некоторые из проектов больше других, один из которых настолько велик, что уже являетсяmonorepo.Другие проекты содержат от 2 до примерно 30 файлов.
Моя идея состояла в том, чтобы создать монорепо со всеми проектами (назовем их «A», «B», «C», «D») внутри.,Но я вижу много проблем с этим подходом:
- Некоторые сотрудники должны работать только над проектом "A", в то время как другие должны работать только над "D".В монорепозиционном подходе все они будут работать в одном и том же git-репозитории и теоретически могут изменять код в проектах, над которыми им не следует работать.
- Как я уже сказал, один из проектов (скажем, «D»)) уже монорепо.Мне нужно было бы вложить монорасположение или изменить структуру проекта на «D».
Подход с несколькими репо имеет большой недостаток: мне приходится переиздавать любой пакет проекта каждый раз, когда он меняется,что увеличивает накладные расходы с точки зрения публикации и установки зависимостей.