Краткая инструкция миграции с svn на git.
Руководство к действию
-
Найти всех авторов с помощью скрипта
#!/usr/bin/env bash authors=$(svn log -q | grep -e '^r' | awk 'BEGIN { FS = "|" } ; { print $2 }' | sort | uniq) for author in ${authors}; do echo "${author} = NAME <EMAIL>"; done
Все записи
NAME
иEMAIL
вручную заменяем на необходимые значения. -
Склонировать svn репозиторий
git svn clone [-s] --no-metadata --username=USER --authors-file=SVN-AUTHORS SVN_URL
Пара слов про опции:
-s
— необходима, если используются стандартные svn папки (trunk, tags, branches).--no-metadata
— удаление записейgit-svn-id
из логов.--username
— тут все понятно.--author-file
— список авторов в svn репозитории (см. пункт выше).
-
Импорт ignore файлов
На каждой ветке необходимо сделать следующее:
git checkout BRANCH git svn create-ignore git commit -a -m "Import svn:ignore."
Полезные ссылки
Весь этот небольшой материал основан на следующих статьях:
Комментариев нет:
Отправить комментарий