Не в состоянии конвертировать SVN в GIT. Это оправдывает остановки - PullRequest
0 голосов
/ 24 января 2012

Я следую этому руководству На шаге 2 клон / извлечение просто останавливается без ошибок.Если я повторю команду, она снова остановится.Есть идеи, в чем проблема?У меня есть ствол, теги, ветви, все стандартно для SVN.

РЕДАКТИРОВАТЬ: можно ли перенести только транк и после этого перенести каждую ветвь один за другим?Если да, пожалуйста, дайте мне подсказку или ссылку.

Ответы [ 2 ]

0 голосов
/ 21 февраля 2012

Абсолютно возможно просто проверить багажник. Из этого руководства замените команду git clone на следующую, которая поднимет ствол и ничего больше:

git svn clone {SVN repository URL} -A authors-transform.txt -T trunk

Обратите внимание, что при этом пропускается опция --no-metadata; без метаданных вы не сможете запустить более позднюю выборку.

Чтобы добавить другие каталоги позже, вам нужно отредактировать файл .git/config. Добавьте одну из следующих строк в раздел [svn-remote "svn"], в зависимости от того, к чему вы хотите иметь доступ:

  • Чтобы добавить новую отдельную папку (например, ствол), добавьте `fetch = {путь к папке}: refs / remotes / {имя локальной ветви}
  • Чтобы добавить папку веток (как и обычную папку «ветки»), добавьте branches = {folder path}/*:refs/remotes/*.
  • Чтобы добавить папку тегов (например, обычную папку «тегов»), добавьте tags = {folder path}/*:refs/remotes/tags/*.

Как только вы обновите файл .git/config, просто запустите git svn fetch еще раз, и он откроет новые каталоги.

Несмотря на это, я бы порекомендовал просто оставить операцию git svn на некоторое время (т. Е. В течение ночи): git svn инициализация может быть очень медленной, особенно если имеется много файлов, фиксаций или больших двоичных файлов. участие.

0 голосов
/ 24 января 2012

Подумайте только о дальнейшей работе с git.
В этом случае git init на верхнем уровне каталога, и вы отключены.
Не сохраняет всю старую историю SVN, так что это будет только ответ, если вы неМне это не нужно.

...