клонирование части хранилища - PullRequest
1 голос
/ 22 марта 2011

Можно ли клонировать часть (отдельную папку или даже один файл) хранилища?

Ответы [ 2 ]

3 голосов
/ 22 марта 2011

В принципе это невозможно, нет ничего похожего на Subversion svn checkout <a href="http://example.com/project/dir1" rel="nofollow">http://example.com/project/dir1</a>.

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

Пример создания частичного клона.Предположим, вы хотите клонировать только каталог doc из репозитория:

$ hg clone http://example.com/project local-project-repo
$ cat > filemap.txt << END
include doc
exclude .
END
$ hg convert --filemap filemap.txt local-project-repo docs-only-repo
3 голосов
/ 22 марта 2011

Неа.Это называется частичное клонирование (некоторые пути к файлам, но не все) или поверхностное клонирование (некоторые ревизии, но не все), и не предусмотрено, поскольку смысл DVCS в том, что у каждого есть полная копия полного репозитория.

Некоторые онлайн-репозитории позволяют загружать файлы .tar.gz всех файлов определенной ревизии или определенного файла определенной ревизии, но это не делается с помощью инструмента Mercurial.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...