2016-10-07 5 views
0

Я клонировал большое Mercurial repo, внесло некоторые изменения, а затем перебросил его на другой сервер.Mercurial - largefile xxxx недоступен из http: // foo/blah/blah

Некоторые новые разработчики приходят к проекту и пытаются клонировать репозиторий с нового сервера, используя

клон -r рт.ст. «branchname» http://ourserver/scm/hg/repo

успешно загружает источник. Но, largefiles не хватает, поэтому мы стараемся

рт.ст. lfpull --rev "все()"

Какие результаты в целом много ошибок, как это:

Foo/Бар/afile.7z: largefile XXXX не доступны http://ourserver/scm/hg/repo

Если я иду в Mercurial веб-интерфейс, найдите нужный файл и загрузите его с помощью «raw» link, я получаю файл с правильным именем файла, но он содержит только то, что я угадываю, это идентификатор. Например, один PDF содержит только:

f91476a8c2cc0a164c0880d128ca80776a8a934e

Любые предложения? У меня есть все эти файлы локально, но они поступают с исходного сервера. Как сделать так, чтобы большие файлы были нажаты?

ответ

1

Просто идея:

Когда вы нажимаете ревизии, которая влияет largefiles на удаленное хранилище, его largefile изменения будут загружены вместе с ревизии. Это гарантирует, что центральный магазин получит копию каждой ревизии каждого файла. Обратите внимание, что удаленный Mercurial также должен иметь , чтобы для этого работало расширение больших файлов.

Это кажется, что «другой сервер» не включен LargeFiles, таким образом, - все будет бардак с файлами, которые Repo с LF-расширение не сохраняет в памяти репо по умолчанию (репо содержат только «ссылки» на пересмотр большого файла в его хранилище)

+0

Хммм ... мой администратор ругается, что большие файлы включены. Я его снова вызову. Благодарю. –

+0

Как я могу подтвердить, что поддержка большого файла включена на сервере? –

+0

@DavidLively: «Каждый локальный репозиторий имеет локальный хранилище больших файлов в формате .hg/largefiles». Центральное репо также является местным репо ... или просто проверяет '.hgrc' –