Я пытаюсь перенести проект из Perforce в Git.Миграция отдельных ветвей Perforce в один репозиторий Git
У меня необычный сценарий (по крайней мере, я не нашел никого спрашивать что-нибудь отдаленно подобное), в соответствии с которым проекты Perforce выглядеть следующим образом:
//depot/MAIN
----------------------------------------X--------------------
/- OTHER merged
-------------------------------
//depot/OTHER
Я пытаюсь перенести MAIN в Git. MAIN запускается до ДРУГОГО и все еще существует. ДРУГИЕ были объединены в MAIN в определенный момент, выполнив операцию «переместить/переименовать» Perforce.
Когда я смотрю Perforce в истории файлов в MAIN, которые первоначально были из OTHER, я могу видеть полную историю , включая изменения, которые произошли до перемещения.
Но когда я переносил MAIN в Git (используя клон git-p4), история всех файлов, поступающих из OTHER, начинается с файлов, перемещенных (на X выше).
Итак, очевидный вопрос: как я могу перенести полную версию в Git, включая изменения, которые были сделаны в OTHER?
Насколько я знаю, нет обнаружения объединения осуществляется в GIT-p4 на момент. То, что вы предлагаете, скорее всего, будет лучшим вариантом. – Vitor
@DouglasLeeder, звучит как интересное направление, я начал читать об этом и пытался бежать, но я даже не могу заставить его начать, получив: 'Файл '/home/git-p4/reposurgeon-3.20/ reposurgeon ", строка 182 preserve = {b'.git/config ', b'.git/hooks'}, SyntaxError: недействительный синтаксис'. Есть идеи? Или, возможно, я должен написать новый вопрос об этой проблеме? – traveh
@TalRaveh, какую версию python вы используете? reposurgeon требует 2.7.2 или новее. –