Можно ли сохранить каталог.hg в произвольном месте?

Я хочу иметь набор репозитория Mercurial, но вместо того, чтобы иметь .hg/ каталог под деревом хранилища, я хотел бы переместить его куда-нибудь (как и в другой раздел) из рабочей копии.

Можно ли так сделать?

2 ответа

Начиная с Mercurial 1.3, вы можете использовать расширение share, чтобы косвенно делать то, что вы хотите. Начните с включения расширения, добавив следующее в ~/.hgrc:

[extensions]
share =

Затем создайте обычный репозиторий в разделе, где вы хотите .hg каталог должен быть:

$ cd /mnt/bigdisk
$ hg init foo

Перейдите в то место, где вы хотите, чтобы была рабочая копия, и создайте общий репозиторий:

$ cd ~/src
$ hg share /mnt/bigdisk/foo

Это создает ~/src/foo хранилище для вас. Этот репозиторий будет ссылаться на /mnt/bigdisk/foo репозиторий. Там еще будет .hg папка в ~/src/foo, но он будет почти пустым и, следовательно, очень маленьким. Вы работаете с общим хранилищем, как обычно, но все коммиты идут прямо в /mnt/bigdisk/foo репозиторий.

Расширение share работает на всех платформах, где работает Mercurial (Windows, Mac OS X, Linux, ...), поскольку "символическая ссылка" выполняется внутри Mercurial, а не через файловую систему.

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

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