Перенос папки из хранилища в другое хранилище со всеми данными дерева изменений - PullRequest
2 голосов
/ 10 октября 2010

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

Возможно ли это сделать с помощью Mercurial?

1 Ответ

0 голосов
/ 15 октября 2010

Я думаю, что если наборы изменений, относящиеся к файлам в этом каталоге, относятся ТОЛЬКО к файлам в этом каталоге, вы можете использовать hg export / import для достижения этого.Сначала определите все наборы изменений для этих файлов, затем экспортируйте их, затем импортируйте их ... вот сценарий оболочки для выполнения первой части:

for i in $(hg log -M --template="{node}\n" directory)
do 
  hg export -r $i -o "$(date '+%Y%m%d%H%M%S')_%H"
done

, затем переместите эти файлы в новое хранилище и выполните импорт hg накаждый из них по очереди.

Если в ваших наборах изменений нет других файлов, это сработает ... даже тогда вы можете найти множество отклонений, и в него не входят исходные сообщения о фиксации или наборы изменений слияния(очевидно).

...