Подтвердить что ты не робот

Как преобразовать репозиторий Mercurial в Git... в * Windows *?

Возможный дубликат:
Преобразование репозитория Mercurial (hg) в Git в Windows (7)

Там есть репозиторий Mercurial, который я хочу преобразовать в Git, и это то, что мы используем на работе. У меня установлен Mercurial (для Windows), и я уже клонировал репозиторий Hg локально. Я застрял в попытке конвертировать его.

Большинство страниц, которые я нашел, предполагают, что я использую Unix/Linux, а наиболее распространенная рекомендация hg-fast-export работает только в этих ОС. У меня есть доступ к Git Bash. Я дошел до этого (обернутый линией для упрощения чтения):

$ ~/codeingit/fast-export/hg-fast-export.sh -r
        ~/codeinmercurial/projectiwanttoconvert

В ответ я получаю:

ImportError: нет модуля с именем mercurial

Я прочитал несколько веб-страниц об этом, которые, опять же, предполагают, что я использую Unix/Linux и что у меня установлен Mercurial для этого.

Есть ли кто-нибудь, кто успешно конвертировал репозиторий Hg в Git в Windows и может написать пошаговое руководство для этого?

4b9b3361

Ответ 1

1) Установить Cygwin или Bash в Windows 10

Cygwin

  • Запустите setup.exe
  • Выберите "Установить из Интернета"
  • В диалоговом окне Выбрать пакеты:
    • Нажмите "Установить" в верхней части дерева (рядом со "Все" ), пока не появится "По умолчанию"
    • Разверните поддерево Devel: установите git (измените значение с Пропустить на номер версии)
    • В поддереве Devel: установите меркурий (изменение от Пропустить до номера версии)
    • Установить Python поддерево (изменение по умолчанию для установки)
    • Нажмите "Далее"
  • При запросе разрешения зависимостей нажмите "Далее"
  • Получите чашку кофе, посмотрите свой любимый фильм или сделайте длинный сон.

После завершения установки Cygwin откройте оболочку bash, чтобы запустить команды, указанные ниже. Ярлык для bash будет называться Терминал Cygwin.

Windows 10

2) Установите fast-export

Открыть терминал (оболочка bash) и установить быстрый экспорт:

   https://github.com/frej/fast-export.git

3) Инициализируйте новый репозиторий git и перенесите меркурийное репо

   mkdir new_git_repo
   cd new_git_repo
   git init
   ../fast-export/hg-fast-export.sh -r /path/to/old/mercurial_repo
   git checkout HEAD


Потенциальная ошибка

fatal: Invalid raw date "<[email protected]> xxx -xxxx" in ident:  <><[email protected]> xxx -xxxx

Попробуйте добавить файл "authors.txt", как описано здесь, содержащий:

<>=devnull <[email protected]>

Теперь в командной строке:

../fast-export/hg-fast-export.sh -r /path/to/old/mercurial_repo -A ../fast-export/authors