Я столкнулся с ситуацией, когда моя команда разработчиков хотела бы реорганизовать файловые структуры в наших репозиториях. Этот процесс займет около 2-3 месяцев. Во время реструктуризации файла нам еще нужно сделать релизы программного обеспечения. Итак, после процесса реструктуризации мы хотим объединить организованные файлы из ветки обратно в магистраль. Важно сохранить историю файлов, а также нам нужно иметь возможность объединить изменения кода в стволе с момента первого создания ветки.
Моя первоначальная попытка заключалась в создании ветки, а затем ее простом слиянии. К сожалению, это не так просто, как я думал. Один из моих тестовых сценариев был следующим:
- Создал ветку из ствола
- Обновить файл в багажнике
- Перенести файл в ветку
- обновить файл в ветке
- Выполнение слияния из ветки обратно в ствол
На шаге 5 я получил ошибку «конфликт дерева» в файле, который я обновляю в стволе. TortoiseSVN не дает информации о том, к какому файлу в ветке относится конфликтующий файл. В моем сценарии разобраться в файлах с проблемами не так уж и сложно; однако в нашем реальном репозитории это будет очень сложно, потому что у нас есть тысячи файлов, и многие из этих файлов имеют одинаковые имена (в разных папках).
Есть ли у кого-нибудь опыт в той же ситуации, что и я? Какие-либо предложения / передовые методы, которые я должен / могу сделать, чтобы обеспечить целостность кодов?
Спасибо за помощь.