У меня есть большой проект Python 3.7+, и я сейчас разбиваю его на несколько пакетов, которые можно установить отдельно. Моя первоначальная мысль заключалась в том, чтобы создать единый репозиторий Git с несколькими пакетами, каждый со своим собственным файлом setup.py. Однако, проводя некоторое исследование в Google, я обнаружил, что люди предлагают один репозиторий для каждого пакета: (например, Python - setuptools - работа с двумя зависимыми пакетами (в одном репо?)). Однако никто не дает хорошего объяснения, почему они предпочитают такую структуру.
Итак, мой вопрос следующий:
- Каковы последствия наличия нескольких пакетов (каждый со своим файлом setup.py) в одном репозитории GitHub?
- Могу ли я столкнуться с проблемами при такой настройке?
- Совместимы ли общие инструменты Python (генераторы документации, упаковка pypi и т. Д.) С такой настройкой?
- Есть ли веская причина предпочесть одну установку другому?
- Имейте в виду, что это не вопрос, основанный на мнении. Я хочу знать, есть ли какие-либо технические проблемы или проблемы с любым из двух подходов.
Кроме того, я осведомлен (и, пожалуйста, поправьте меня, если я ошибаюсь), теперь setuptools позволяет устанавливать зависимости из репозиториев GitHub, даже если URL-адрес GitHub файла setup.py не находится в корне репозитория.