Mercurial репо внутри репо - PullRequest
5 голосов
/ 12 июня 2010

Можно ли создать ртутный репозиторий внутри существующего ртутного репозитория?

Идея состоит в том, чтобы обрабатывать подкаталоги репозитория как разные репозитории, как это сделать?

I 'Я не говорю о подзадачах (по крайней мере, если я понял назначение подзадач ...), но если так существуют подзадачи, я ошибся и постараюсь сделать это правильно:)

Спасибо ~ Aki

РЕДАКТИРОВАТЬ: Чтобы быть более ясным, я хотел бы знать, что происходит, практики и последствия наличия хранилища внутри другого, без указания модулей / подпунктов.Другими словами: что произойдет, если я просто сделаю:

hg init globalRepo
hg init globalRepo/subRepo

и использую эти два хранилища как есть?

Ответы [ 3 ]

15 голосов
/ 13 июня 2010

Работает хорошо.Задолго до того, как в Mercurial 1.3 была добавлена ​​поддержка subrepo, многие люди хранили свои домашние каталоги в репозитории Mercurial для отслеживания своих файлов .bashrc и т.п.Тогда в их домашнем каталоге у них будет много клонов других репозиториев.

Каждый раз, когда вы вызываете Mercurial (без опции -R), он ищет в текущем каталоге каталог .hg, а затем просто продолжает работать.до каталогов, пока не найдет один.Поэтому, если вы находитесь в репо, которое находится в репо, ваши команды всегда будут действовать на самое внутреннее репо, в котором вы находитесь.

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

4 голосов
/ 12 июня 2010

Как вы можете видеть в этом SO вопросе , вы можете сделать этот тип вложенным hg init, даже если он обычно используется для определения subRepo (это не то, что вам нужно).

Обычно он должен работать как два независимых репо, но я бы посоветовал добавить правило hgignore в globalRepo, чтобы полностью игнорировать содержимое subRepo.

0 голосов
/ 12 июня 2010

Вот несколько документов во вложенных репозиториях.

...