Ответ 1
Или скажите мне, что URL-адрес для этого hg-репо, и я могу преобразовать его для вас.
На данный момент я очень расстроен. У меня есть существующий hg-репозиторий, в котором есть месяцы истории кодирования, и я хочу, чтобы это было в частном репозитории Github, поэтому я могу работать над ним оттуда. К сожалению, я использую Windows, и я не могу найти способ конвертировать репозиторий, который я действительно смогу нормально работать. Практически каждый кусочек помощи и рекомендаций, которые я могу найти в Интернете, кажется, предполагает, что я бегу от какой-то оболочки * nix, которой я не являюсь.
В настоящее время я установил: TortoiseHG, Python 3.1 и Git для Windows.
Что я пробовал:
Плагин hg-init для hg - Когда я пытаюсь использовать команду gexport (и другие из hg- git), я просто получаю строки исключений python. Я полностью не могу получить Git, чтобы даже распознать команду gremote. Я пробовал следить за тем, что было здесь: http://github.com/blog/439-hg-git-mercurial-plugin
hg-to- git (быстрый экспорт). Все учебники продолжают ожидать, что я запустите файл .sh. Другой поток stackoverflow, казалось, подразумевал, что Powershell может запускать файлы .sh, но я не могу заставить его запускать их для меня. Пример: http://hivelogic.com/articles/converting-from-mercurial-to-git
Mercurial to Git converter - http://permalink.gmane.org/gmane.comp.version-control.git/36601 - Это не работает, когда я запускаю его через Python, который жалуется, что он имеет синтаксическую ошибку в строке 44. Я не знаю python, поэтому я понятия не имею.
Четыре часа поиска в Google и прохождение через бесполезные учебники и люди - более удачливые, чем я, поющие хвалу каждому якобы полезному сообщению в блоге, но я никуда не с этим справился. Может ли кто-нибудь предложить какую-либо помощь или предложения для меня попробовать?
Или скажите мне, что URL-адрес для этого hg-репо, и я могу преобразовать его для вас.
Существует много противоречивой информации о том, как конвертировать Mercurial-репозитории в Git в Windows. Это довольно просто и требует только TortoiseHg и Git.
Включить hg- git, добавив следующее в ваш файл конфигурации Mercurial (% Userprofile%\mercurial.ini):
[extensions]
hggit =
hgext.bookmarks =
[git]
intree = True
Перейдите в каталог репозитория (который содержит подкаталог .hg) в командной строке и выполните следующие команды:
hg bookmark -r default master
hg gexport --debug
git config --bool core.bare false
git reset HEAD -- .
Подробное описание этих шагов вы можете найти в моей статье в блоге по этому вопросу.
Рассматривали ли вы установку msysgit? Оболочка git bash, которую она дает, должна иметь возможность запускать файлы .sh.
Все, что я прочитал об этих Hg-конвертерах для Git, указывает на одну очевидную ошибку, которую вы сделали: Использование Python 3!
Те ошибки Python, которые вы получали, связаны с такими сценариями, как hg- git и быстрым экспортом, созданным с использованием Python 2.6. Python 3 рассматривает "печатать" по-разному, следовательно, ваши ошибки.
Перепишите сценарии для работы с вашей версией или установите Python 2.6.
Обязательно добавьте его в настройку PATH. То же самое происходит при установке msysGit. Убедитесь, что вы выбрали второй вариант при установке, чтобы добавить Git к вашему пути.
Вам также нужен Mercurial For Python, доступный в проекте TortoiseHG thg-winbuild:
https://bitbucket.org/tortoisehg/thg-winbuild/downloads
Файл будет называться "mercurial-2.2.2.win-amd64-py2.6.exe" для 64-битной Windows и "mercurial-2.2.2.win32-py2.6.exe" для 32-битного. Пока вы на нем, на всякий случай приготовьте установщика Mercurial 2.2.2.
Хотя вы заявили, что не хотите устанавливать еще одно программное обеспечение VCS, использование любого из этих Hg-конвертеров требует установки Mercurial.
Еще одна ошибка, на которую нужно обратить внимание - эти конвертеры могут не работать с последними версиями Mercurial. Возможно, вам придется немного поэкспериментировать со старыми версиями, чтобы найти тот, который хорошо работает со сценариями.
Обязательно внимательно прочитайте учебники и файлы Readme для любого конвертера, который вы используете при использовании. Кажется, много вашего горя и неприятностей связано с тем, что он нетерпеливо прыгнул в глубокий конец, только уменьшив документацию.
Доступны патчи, которые добавляют поддержку Mercurial к Git и msysGit, но вам нужно будет быть удобным с исправлением и компиляцией из исходного кода, если вы хотите следовать этому маршруту.
Это может показаться глупым (или решением для отчаянного...), но я думаю, что Bazaar имеет хорошую поддержку как Hg, так и Git репозиториев, и он хорошо работает в Windows.
Так что если все остальное не удается, возможно, вы можете использовать bzr-hg и bzr- git сделать преобразование...
Если оригинальное репозиторий Mercurial доступно в Интернете, и если вы не против использовать GitHub для этого, конвертировать Mercurial в Git теперь тривиально легко:
+
в правом верхнем углу.Import repository
.Begin import
и подождите.Вам даже не нужно оставаться на странице после этого. Через некоторое время GitHub уведомит вас по электронной почте о завершении импорта.