Преобразование Mercurial-репозитория в формат Git — различия между версиями
RedPython (обсуждение | вклад) (Новая страница: «== Преобразование из .hg в .git с помощью расширения hggit для клиента TortoiseHG== === Подготовка === Пр…») |
RedPython (обсуждение | вклад) м |
||
Строка 13: | Строка 13: | ||
[git] | [git] | ||
− | intree = True | + | intree = True</syntaxhighlight> |
Если какие-то параметры отсутствуют, то их нужно дописать. | Если какие-то параметры отсутствуют, то их нужно дописать. | ||
Версия 11:33, 21 апреля 2020
Содержание
Преобразование из .hg в .git с помощью расширения hggit для клиента TortoiseHG
Подготовка
Предполагается, что в системе уже установлены TortoiseHG и Git.
Расширение hggit поставляется в комплекте с самой черепахой. Его нужно включить в настройках (Файл -> Настройки -> hggit).
Но это не всё. Далее нужно залезть в файл настроек (путь к нему указан на в окошке настроек черепахи) и удостовериться, что секции [extensions] и [git] существуют и выглядят так:
[extensions]
hggit =
hgext.bookmarks =
[git]
intree = True
Если какие-то параметры отсутствуют, то их нужно дописать.
Далее нужно слить все ветки hg-репозитория в одну под стандартным именем default. Иначе преобразуется не всё.
Только после этого можно приступать к собственно процессу преобразования.
Преобразование
Открыть консоль Git и последовательно вводить команды:
-
hg bookmark -r default master
– создать закладку master на ветке default -
hg gexport --debug
– преобразует репозиторий в формат git -
git config --bool core.bare false
– некое специфичное для git преобразование "пустого" репо в "рабочий" -
git reset HEAD -- .
- некая специфичная для git манипуляция с индексом файлов, без неё репо будет неработоспособным
Если что-то не получилось и вы потерялись, то всегда можно вбить команду gclear
– она уничтожит каталог .git и все файлы в нём, не затрагивая hg-репо.
Проверка результатов
Полученный git-репозиторий можно открыть в одном из более-менее дружелюбных клиентов (и это НЕ TortoiseGit!), например, SmartGit или SourceTree (последний не устанавливается под Windows 7). Если всё получилось, то вы должны увидеть адекватный граф изменений.
После этого нужно обязательно указать ссылку на ваш git-репозиторий, расположенный на удалённом сервере (параметр remote или что-то подобное). HTTPS-ссылка даётся в следующем формате:
https://имя_юзера@bitbucket.org/stalker/имя_репозитория.git
После указания ссылки на сервер можно затягивать и проталкивать изменения.