@qbertych

Какой workflow выбрать для модификации внешних git-репозиториев?

У нас есть git-репозиторий на Python. Он импортирует несколько других модулей (не наших, но доступных на Github), в которые нужно внести несколько изменений. Появился вопрос о том, как это организовать наилучшим образом:

Вариант 1. Форкнуть внешние репозитории, внести в них изменения. Для своего проекта создать виртуальное окружение, в которое установить форкнутые репозитории.

Вариант 2. Форкнуть внешние репозитории, добавить их в проект через submodules (или даже subtrees).

Вариант 3. Просто скопировать чужие репозитории в свой проект (благо лицензия позволяет).

Из особенностей:
- изменения во внешние репозитории будут вноситься довольно редко
- команда - не программисты, а инженеры, среди которых многие с git на "вы" (то есть нетривиальные ошибки git могут парализовать работу).

По всей видимости, это отсекает второй вариант. Третий вариант не позволяет обновлять внешние модули. С первым вроде бы все неплохо, но в случае обновления внешних модулей нужно будет обновлять и форкнутые репозитории, и виртуальное окружение.

Собственно, вопрос: правилен ли такой подход? И как обычно решается вопрос с модификацией внешних модулей?
  • Вопрос задан
  • 89 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы