Подмодули git, поддеревья или другое

Вероятно, я неправильно понял, как работает git, у меня есть моя структура каталогов следующим образом:

project (git-repo)
  project 1 (git-repo)
  project 2 (git-repo)
  common scripts (git-repo)

Все эти папки имеют свои собственные репозитории, где основные project могут иметь дочерние репозитории, такие как project 1, project 2, child scripts, Они могут быть субмодулями или поддеревом. Проблема, common scripts содержат некоторые коды, которые являются общими и необходимыми для создания как project 1 а также project 2, Что может быть лучшей стратегией для поддержания этого, чтобы каждый проект мог быть независимым, а также нет необходимости хранить общие сценарии в двух местах.

1 ответ

Я просто хочу оставить косвенное решение, которое я нашел. Это может быть полезно для других, пока не получат другие подходы.

Пока я не могу убежать, не соблюдая common scripts папка в двух местах, но можно хранить ее в одном месте. Ниже приводится структура, которую я принял на данный момент,

project
  project 1 (git-repo)
    common-script (git-repo/submodule)
  project 2 (git-repo)
    common-script (git-repo/submodule)
  common-script (git-repo)

Таким образом, я могу работать над common-script из своего репо и из каждого проекта, который я могу использовать git submodule foreach git pull origin master и сделайте репо, чтобы у меня был обновленный скрипт в каждом из зависимых проектов.

Другие вопросы по тегам