Я пытаюсь перенести репозиторий SVN с более чем 26 000 ревизий в несколько репозиториев Git, используя (Kde) SVN2GIT . Один конкретный репозиторий генерирует ошибку при миграции. Вот почему я сократил правила для миграции в этот конкретный репозиторий.
Вот правила генерации репозитория:
create repository my_repo
end repository
#
# Declare the rules
# Note: rules must end in a slash
#
#
# my_repo
#
match /Project/trunk/dir_1/
repository my_repo
branch master
end match
match /Project/branches/([^/]+)/dir_1/
repository my_repo
branch \1
end match
match /Project/tags/([^/]+)/dir_1/
repository my_repo
branch refs/tags/tag/\1
annotated true
end match
match /
end match
SVN2Git был выполнен с использованием опции образа докера, предоставленной в документация на сервере Linux. Некоторые из предложенных мною альтернатив включали в правила пользователя параметр «recerc action», который описан в здесь . Правила будут выглядеть так:
create repository my_repo
end repository
#
# Declare the rules
# Note: rules must end in a slash
#
#
# my_repo
#
match /Project/trunk/dir_1/
repository my_repo
branch master
min revision 18800
end match
match /Project/branches/([^/]+)/dir_1/
repository my_repo
branch \1
min revision 18800
action recurse
end match
match /Project/tags/([^/]+)/dir_1/
repository my_repo
branch refs/tags/tag/\1
min revision 18800
action recurse
annotated true
end match
match /
end match
Я также немного поиграл с правилами, но ни один из моих подходов не сработал.
Вот фрагмент журнала:
Exporting revision 18840 done
Exporting revision 18841 /Project/branches/branch_2/dir_1 was copied from /Project/branches/branch_1/dir_1 rev 18840
/Project/branches/branch_2/dir_2 was copied from /Project/branches/branch_1/dir_2 rev 18840
rev 18841 /Project/branches/branch_2/dir_2/ matched rule: "/tmp/conf/Project.rules:22 /Project/branches/([^/]+)/dir_2/" exporting.
.my_repo : branch branch_2 is branching from branch_1
"branch_2" in repository "my_repo" is branching from branch "branch_1" but the latter doesn't exist. Can't continue.
rev 18841 /Project/branches/branch_2/dir_2/ matched rule: "/tmp/conf/Project.rules:22 /Project/branches/([^/]+)/dir_2/"
У меня вопрос: была ли у кого-то эта ошибка раньше, и если да, как вы справились с ней?
Любая помощь будет очень признательна. Я имею дело с этой проблемой более недели.
Спасибо и надеюсь, что кто-то может помочь.