Перенос подпапок веток SVN в Git
Я использую svn2git
но я мог бы использовать git svn
также. У меня был сценарий ниже в хранилище SVN.
trunk
brances
branchesA
branchA1
branchA2
[...]
branchesB
branchB1
branchB2
[...]
branchesX
[...]
После завершения миграции на стороне Git появляются ветки branchesA
, branchesB
и т. д., которые имеют внутри папки с правильно ветвями SVN. Например, в репозитории Git:
master
branchesA
branchesB
branchesX
[...]
если ты $git checkout branchesA
вы увидите все ветки подпапок вроде ($ls
):
branchA1
branchA2
branchA3
[...]
Есть ли способ или инструмент или что-то, что могло бы исправить это, как только я уже перенес это, или как-то передать более одной папки в --branches
?
1 ответ
Не использовать git svn
для одноразового обращения. Это здорово, если вам нужно постоянно синхронизировать, а также фиксировать обратно в SVN, но неоптимально для одноразового преобразования.
Есть инструменты под названием svn2git
, но из вашего вопроса, я думаю, вы не используете KDE из https://github.com/svn-all-fast-export/svn2git. Я настоятельно рекомендую использовать это svn2git
инструмент. Это лучшее, что я знаю из доступных, и оно очень гибкое в том, что вы можете делать с его файлами правил.
Вы легко сможете настроить его для своего макета, чтобы получить желаемый и ожидаемый результат. Вы даже можете придерживаться соглашения о том, что ваши ветки должны быть в "подпапках", как если бы они были в настоящее время в SVN. Тогда ветка в Git будет branchesA/branchA1
,
Если вы не на 100% об истории вашего хранилища, svneverever
http://blog.hartwork.org/?p=763 - отличный инструмент для изучения истории SVN-репозитория при его переносе в Git.