2012-04-25 2 views
1

я в основном имеет компоновки Repo следующих GITИмпорта мерзавец репо с несколько инициалом совершает в SVN

x ---- a -------------- b -------------- c ----> 
     y -- 1 -- 2 -- ┛ z -- i -- j -- ┛ 

где x, y, z начальные фиксации. У меня есть эти несколько начальных фиксаций, потому что я слился несколько Git репозиториев в один большие хранилища с помощью

git fetch git://github.com/<user>/<repo>.git refs/heads/master:refs/heads/<repo> 
git merge --no-commit <repo> 
git read-tree --reset -u HEAD 
git read-tree -u --prefix=lib/<repo> <repo> 
git commit -m "Pulling <repo>" 
git branch -d <repo> 

нескольких раз. Все подмодули в основном имели одинаковый макет файла.

Чтобы импортировать GIT репозиторий в SVN Я инициализируется пустой репозиторий SVN и клонировали ее с помощью

git svn clone http://some/svn/repo/my-project 

я попытался

cd my-project 
git remote add dev /path/to/working/git/big-repository 
git pull dev master 
git svn rebase 

Но перебазироваться не удается из-за некоторых сливаться ошибки, которые появляются происходят потому, что все подмодули имеют идентичный файл на своем верхнем уровне (pom.xml)

Есть ли какой-либо способ импортировать репозиторий git i nto svn сохраняет историю?

ответ

0

Надеюсь, что кто-то еще предоставит более изящный ответ, но если проблема действительно в этом конфликтующем файле, вы, вероятно, можете использовать git filter-branch, чтобы удалить файл из истории проекта.

This page имеет пример.

+0

Я не думаю, что это все. Каждый подмодуль имеет тот же макет (с 'pom.xml' в корневом каталоге), но они попали в разные каталоги в большом репо. Как бы то ни было, при перезагрузке для svn они попадают в один и тот же каталог. Я предполагаю, что это связано с несколькими начальными коммитами. – oschrenk

Смежные вопросы