Как я могу объединить свои файлы, если структура папок изменилась

StackOverflow https://stackoverflow.com/questions/1798596

Вопрос

Я хочу выполнить крупную реорганизацию кодовой базы, но я не могу продолжить, если не смогу предоставить способ простого применения магистральных исправлений к ветвям, которые были приняты до реорганизации.

Один из подходов, который я рассматривал, состоял в том, чтобы применить реорганизацию ко всем вспомогательным подразделениям, но это потенциально дестабилизирует ситуацию.

Предпочтительным подходом было бы предоставить инструмент слияния, который может учитывать обновленные расположения файлов.Есть какие-нибудь предложения о том, как я мог бы это реализовать?

Это было полезно?

Решение

Я нахожусь в такой же ситуации, когда филиалы не всегда связаны только с обслуживанием или исправлениями.Нам часто приходится поддерживать несколько активных ветвей стабилизации, и мы должны объединяться между ними.Мы не можем позволить себе роскошь смешивать область видимости, чтобы практиковать непрерывную интеграцию на магистрали.

Мы прибегаем к выполнению слияний на более детализированном уровне.Если папка перемещена, выполните слияние непосредственно из старого расположения в одной ветви в новое расположение в другой ветви.Я бы также настоятельно рекомендовал вам использовать "svn move" для выполнения первоначальной реструктуризации, это гарантирует понимание происхождения.

В любом случае, это неприятно и очень ручно.Ведите хорошие записи.

Другие советы

Мой вопрос был бы таков: почему вы хотите объединить реорганизацию обратно в филиалы?Идея филиалов заключается в том, что они (как правило) находятся в режиме обслуживания (напримермагистраль - это версия 4, и вам нужно вернуться и исправить версию 3, вы делаете это в ветке версии 3), или для того, чтобы люди выполняли какую-то побочную работу, которую они не обязательно хотят иметь в магистрали сразу.

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

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top