Mercurial: копирование ОДНОГО файла и его истории в другой репозиторий - PullRequest
49 голосов
/ 04 сентября 2010

Мне интересно, могу ли я скопировать один файл и его историю из одного хранилища в другое, не импортируя целый другой хранилище.

Ответы [ 2 ]

57 голосов
/ 04 сентября 2010

Вы можете использовать ConvertExtension для экспорта только этого одного файла из первого репозитория в новый временный репозиторий, а затем используйте hg pull -f для импорта нового репозитория в целевой репозиторий.

Создайте карту файлов для ConvertExtension в одну строку:

include path/to/file

Тогда используйте:

hg convert path/to/original path/to/temporary --filemap filemap

для создания временного хранилища. Далее в целевом хранилище выполните:

hg pull -f path/to/temporary

чтобы извлечь этот файл с его историей. Это создаст новую голову, поэтому используйте hg merge, чтобы объединить ее с головой в вашем целевом хранилище.

10 голосов
/ 09 апреля 2014

Просто чтобы добавить ответ Найла С., вы можете переименовать файлы, которые вы импортируете, чтобы разместить их также в нужном месте.

Сначала необходимо переименовать файл, а затем включить его. Ваша файловая карта будет выглядеть так:

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