2017-01-27 28 views
0

Я использовал svn2git для преобразования большого репозитория SVN в 10+ тысяч записей в репозиторий Git.Можно объединить ветки, которые были скопированы в прошлом, но не имеют одного и того же корня?

Репозиторий Git работает нормально, но существенно больше по размеру файла по сравнению с репо SVN.
Причина в том, что ветви SVN не были созданы должным образом как новая ветвь, а скорее скопировали весь контент файла из мастера и работали поверх этого.

Таким образом, все ветви Гита - behind the master by 10k+ commits. Поскольку процесс ручного воссоздания каждой ветви и запуска svn2git снова займет несколько дней, мне было интересно, можно ли объединить корень этих связанных деревьев с одним источником, но сохранить раздел HEAD, чтобы продолжить работу над ветвями.

Дайте мне знать, если вам нужна дополнительная информация.

[]

+0

Какой инструмент 'svn2git' вы использовали? Их много. – 1615903

+0

Этот: https://github.com/nirvdrum/svn2git – fasoh

ответ

0

В мерзавец вы не можете объединить 2 ветви с несвязанной историей, но вы можете сделать что-то другое, которое будет работать.

git cherry-pick

git cherry-pick start..end позволяют выбрать любой совершить выбор из локального хранилища в любой отрасли, независимо его происхождения. Это позволит вам «импортировать» любые фиксации из любой ветки в любую другую ветвь вашего репо.

+0

Как насчет опции '-allow-unrelated-history''' git merge'? – Vampire