Как мне перейти с одного Mercurial сервера на другого, не потеряв мою историю?

У меня есть проект, в котором я использую Bitbucket в качестве моего HG-сервера, но недавно я обнаружил, что как одинокий разработчик я могу бесплатно использовать Fogbugz/Kiln. Я хочу переместить мои файлы в Kiln, но я не хочу потерять свою историю. Я уверен, что там есть глупый простой способ сделать это, но я просто не знаю. Как это сделать?

Спасибо!

Ответ 1

Создайте новое репо проекта и сделайте следующее с вашей текущей копией исходного репо: hg push new-repo-path.

Затем вы будете использовать новый путь в будущем. Вы можете удалить репозиторий bitbucket.

С Mercurial вся история находится в каждой копии репозитория, включая ваши локальные копии.

Ответ 2

Поскольку вы уже используете Mercurial. Мне было просто любопытно, не нужно ли клонировать ваш репозиторий на Fogbugz/Kiln.

hg clone "BitBucket Repo ..."

Конечно, это не будет копировать ваш hgrc файл для каждого репозитория. Вам нужно будет сделать это отдельно.

Другим подходом является использование пакета.

hg bundle --all bitbucket.bundle
hg clone bitbucket.bundle my_repo

Третий подход заключается в том, чтобы оттолкнуть или вытащить из репозитория битбакет в репозиторий fogbugz.

Установка значений по умолчанию

Смотрите: https://www.mercurial-scm.org/wiki/TipsAndTricks.

Воспроизведение здесь:

Можно сохранить URL-адрес по умолчанию, который будет использоваться при вводе только "hg push". Измените hgrc и добавьте что-то вроде:

[paths]
default-push = ssh://[email protected]/path

Ответ 3

Другие ответы уже объяснили, что сразу после создания нового пустого хранилища вы можете вносить свои изменения в него с помощью hg push http://example.com/hg/newrepo. (Обратите внимание, что как только вы вложите в него какие-то изменения, в будущем он будет принимать изменения от соответствующих репозиториев.)

То, о чем вы, похоже, тоже задаетесь вопросом, - это то, как настроить локальный репозиторий по умолчанию для этого местоположения, без необходимости указывать URL-адрес каждый раз. Вы можете сделать это, отредактировав местоположение по умолчанию в файле .hg\hgrc вашего репозитория. Это текстовый файл, который можно открыть с помощью блокнота или любого другого текстового редактора.