Возможно, вы ищете подмодулей :
Подмодули позволяют встраивать внешние репозитории в выделенный подкаталог дерева исходного кода, всегда указывая на конкретный коммит.
Ключевое слово внедрено : фактический клон Common.git будет встроен в каждый из других проектов. Это обычно хорошо, когда вы не собираетесь изменять его в других проектах, просто используйте одну версию и время от времени обновляйте эту версию из исходного Common.git. Вы бы сделали что-то вроде этого:
# add Common.git as a submodule at the path "common" inside this repo
git submodule add /var/Common.git common
# initialize it, clone, and check out a copy
git submodule update --init
# commit the addition of the submodule
git commit
Обратите внимание, что путь к подмодулю будет зафиксирован в вашем хранилище, поэтому вам следует использовать общедоступный URL-адрес. Если вы хотите настроить его локально, вы можете запустить git submodule init
, отредактировать URL в .git / config, а затем запустить git submodule update
. Если у вас есть дополнительные вопросы, обратитесь к справочной странице или найдите SO; здесь есть много вопросов по подмодулям.
Если, с другой стороны, вы собираетесь редактировать содержимое Common.git внутри каждого из проектов, вы можете использовать git-subtree , который является дружественной оболочкой для поддерева git. объединить факультеты. Это позволит вам рассматривать содержимое common.git как отслеживаемое содержимое внутри каждого из проектов, в то же время имея возможность разделять коммиты на него и объединять их в самом Common.git, а также обновлять Common.git обратно в проекты. .