Подтвердить что ты не робот

Как обрабатывать символическую ссылку как каталог в Mercurial?

Начиная с 0.9.4, при добавлении символической ссылки Mercurial отслеживает саму ссылку, а не файл или каталоги, на которые указывает. Однако бывают случаи, когда желательно отслеживать файлы, на которые указывает символическая ссылка.

Как я могу заставить Mercurial обрабатывать символическую ссылку на каталог как обычный каталог?

4b9b3361

Ответ 1

Под linux вы можете использовать

mount --bind sourcepath targetpath

вместо символических ссылок и mercurial будет рассматривать цель как обычный каталог (проверенный на openSUSE 11.2 с Mercurial 1.3.1 и на RHEL6).

Альтернативный синтаксис, подходящий для включения в /etc/fstab,

mount -o bind sourcepath targetpath

Запись fstab, затем

sourcepath targetpath none defaults,bind 0 0

Ответ 2

Я не думаю, что есть способ сделать это, когда вы работаете с каталогами.

Если вы работаете с Mercurial 1.3 или более поздней версией, вы можете попробовать использовать новую поддержку subrepo, которая позволит вам иметь материал репо, который находится вокруг него на локальном диске, но он не такой бесшовный, как ссылка была бы.

Ответ 3

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

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

Ответ 4

Просто следить за Rage Steel отличный ответ (mount -bind):

Чтобы ваша гора была готова к загрузке (так как mounts не выдерживает перезагрузки), в вашем /etc/fstabs поставьте:

/paht/to/source/path/to/target привязывать значения по умолчанию, связывать 0 0

Просто убедитесь, что поместите его после установки источника.