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