Зеркальное копирование из ртутных B-файлов в большие файлы - PullRequest
4 голосов
/ 16 ноября 2011

Я какое-то время использовал расширение bfiles от Mercurial, и оно работает нормально.Единственными проблемами являются установка и специальная команда "hg bfadd".

Теперь, когда Mercurial 2.0 включает в себя расширение largefile, которое я хотел бы переключить.

Не могу найти какие-либо инструменты или руководства о том, каксделать это?Кто-нибудь еще пробовал.

У меня есть несколько репозиториев, которые используют один и тот же магазин и имеют следующий mercurial.ini.

[bfiles]
store=\\Someserver\Mercurial\bFilesStore
autostatus  = true
autoupdate  = true 
autorefresh = true 
autoput     = *

Ответы [ 2 ]

4 голосов
/ 16 ноября 2011

Документацию можно найти здесь: https://www.mercurial -scm.org / wiki / LargefilesExtension

Чтобы включить расширение, добавьте в свою hgrc следующее:

[extensions]
largefiles =

Вы можете добавить новый большой файл с помощью:

hg add --large thisfileislarge

О миграции, readme.txt расширения bfiles говорит что-то о файле migrate.txt (https://bitbucket.org/gward/hg-bfiles/overview section "Будущее").Но я нигде не могу найти файл в хранилище, может быть, он забыл загрузить его.

На mercurial-devel также есть письмо об этом: https://www.mercurial -scm.org / pipermail /mercurial-devel / 2011-October / 035161.html но с тех пор ничего.

Возможно, лучшим решением будет связаться с автором bfiles о его статусе в процессе миграции и продолжать использовать старое расширение доу вас есть ответ?

В любом случае, существует много сообщений об ошибках, связанных с большими файлами, начиная с версии 2.0, поэтому, возможно, в любом случае стоит подождать:)

1 голос
/ 11 мая 2012

В последней версии hg-bfiles (с 2011-12-05), если вы обновите ветку migrate, вы получите этот файл справки:

bfiles: миграция на большие файлы

Если вы хотите перейти с bfiles на новое расширение для больших файлов в Mercurial 2.0, вам сначала нужно решить: преобразовать свое хранилище или сохранить его?

преобразовать свое хранилище

Это уместно, если:

  • у вас есть небольшое хранилище
  • вы точно знаете, где находится каждый его клон
  • , вы можете заменить каждый клон

Включает создание нового репозитория с заменой .hgbfiles / на .hglf /.Это означает, что ваши идентификаторы изменений будут отличаться, поэтому вы не сможете перемещаться между старым и новым репозиториями.Вы должны заменить каждый существующий клон на клон преобразованного репо.

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

Процесс в основном автоматизирован двумя сценариями оболочки: convert-repo и convert-store.

  1. Используйте сценарий оболочки convert-repo для преобразования самого хранилища.Это просто обертка вокруг "hg convert", которая заботится обо всех суетливых деталях, необходимых для превращения .hgbfiles / в .hglf /.Его легко запустить:

    . / Convert-repo SRC-REPO DST-REPO

    Полученный DST-REPO еще не готов к использованию: вам все равно придется преобразовать хранилище bfiles вхранилище largefiles.

  2. Используйте convert-store, чтобы превратить хранилище bfiles в хранилище largefiles.У вас должна быть локальная копия хранилища bfiles - так что вы
    , вероятно, захотите запустить ее на сервере, где находится ваше хранилище bfiles
    .Опять же, это просто:

    . / Convert-store SRC-STORE DST-REPO / .hg / largefiles

    Поместить хранилище в DST-REPO - это самый простой способ заставить большие файлы просто работать.

Сохранение вашего репо

(Да, это конец файла, нет никакой помощи в том, как сохранить ваш репозиторий)

...