Конвертировать hg ветки в git ветки?
Я должен преобразовать разветвленное Mercurial Repo в GIT-репо И продолжать в течение некоторого времени продолжать переносить изменения из Mercurial в Git (только в одну сторону). Существующие ответы hg-to-git, кажется, не обрабатывают ветви правильно. Например, небольшое репозиторий hg с ветками 'default' и 'br1' приводит к такому:
$ hg branches
br1 3:a8914879f6bb
default 2:4e6221bce113
cd ..
git-hg clone file:/path/to/hgrepo gitrepo
...<snip>
From .git/hgremote
* [new branch] br1 -> hg/br1
* [new branch] master -> hg/master
From .git/hgremote
* branch master -> FETCH_HEAD
cd gitrepo
git branch --list
* master
Git думает, что есть только одна ветка 'master'. Как я могу сделать так, чтобы мои ветки Mercurial отображались как ветви Git с одинаковыми именами? Я могу жить с 'master' вместо 'default', но у меня должны быть все остальные мои именованные ветви в git.
1 ответ
Ветви импортируются как удаленные ветви, что означает, что они относятся к удаленному репозиторию, который является hg-репозиторием. Если вы печатаете git branch -a
Вы сможете увидеть все ветви.
Вы можете создавать локальные ветви этих удаленных веток просто так:
git branch <localname> <remotename>
Например:
git branch br1 hg/br1