Использование пространств имен Git для размещения нескольких репозиториев - PullRequest
0 голосов
/ 18 сентября 2018

С https://git -scm.com / docs / gitnamespaces :

Git поддерживает деление ссылок одного репозитория на несколько пространств имен, каждое из которых имеет свое собственноеветви, теги и заголовок.Git может выставлять каждое пространство имен в качестве независимого репозитория, из которого можно извлекать данные и выдвигать их, предоставляя общий доступ к хранилищу объектов и предоставляя все ссылки для таких операций, как git-gc.

Я хотел бы использоватьэтой функции путем хранения отдельных, не связанных между собой хранилищ в одном объединенном хранилище.Например, я хотел бы разместить для своей команды один репозиторий, содержащий небольшие библиотеки Python, каждая из которых имеет свой собственный набор ветвей / тегов.Я думаю, что могу вытолкнуть ветки из отдельных репозиториев в единый репозиторий с чем-то вроде git --namespace=library_n push --all unified_repo.Это, кажется, работает нормально по большей части.Отсюда я упускаю то, что в новом пространстве имен нет назначенного HEAD.Итак, если я затем запустил что-то вроде git --namespace=library_n clone unified_repo.git local_library_n, я получу:

предупреждение: удаленный заголовок ссылается на несуществующий ref, неспособный оформить заказ.

Пока новый клонфункционирует просто отлично, досадно, что нет заголовка по умолчанию, который был бы извлечен сразу после клонирования.Я неправильно подхожу к этому?Есть ли правильный способ клонировать / подтолкнуть к объединенному репо, чтобы каждое пространство имен содержало соответствующую ГОЛОВКУ?

1 Ответ

0 голосов
/ 18 сентября 2018

Я бы хотел разместить для своей команды один репозиторий, содержащий небольшие библиотеки Python, каждая из которых имеет свой собственный набор ветвей / тегов

Это было бы гораздо проще сделать с помощью субмодулей .

Ваш основной репо будет ссылаться на подпункты с

git submodule add /url/of/lib1
git submodule add /url/of/lib2
git submodule add /url/of/lib3
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...