У меня плохо структурированный репозиторий SVN. Позвольте мне попытаться дать вам изображение.
svn-repo
|
|--branches
| |
| |-- project1
| |-- project2
| |-- tragetProject
| |
| |-- targetProject5.0.0
| |-- targetProject5.0.1
| |-- targetProject5.0.2
| |-- ...
|
|--trunk
|
|-- project1
|-- project2
|-- ...
Проект, который я хочу перенести, это "targetProject". Каждая ветка получена из последней ветки, например. 5.0.1 это ветка от 5.0.0. Таким образом, каждая ветка в SVN имеет историю коммитов своего предка.
Это процесс, который я пытался перенести на git.
git svn init [trargetProject5.0.2 Url]
git svn fetch
Моя проблема в том, что хотя ветка svn имеет всю историю коммитов, после выборки в git local master есть только история коммитов этой ветки, а не ее предков.
Мне нужно получить всю историю. Я попытался изменить URL-адрес ветви git в git config, чтобы получить коммиты для каждой ветви, но это также не удалось, так как «git svn rebase» не работал должным образом. Мне также нужно получить новые коммиты, возможно, новой ветки, созданной в SVN-репо. Кто-нибудь может помочь или предоставить мне новый способ справиться с этим? Спасибо.