Subversion объединяет ветки с транками и конфликты с ветками с измененными файлами в 1.6 - PullRequest
2 голосов
/ 08 мая 2011

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

Моя программа недавно перешла с CVS на SVN 1.6.Мы прочитали книгу RedBeans и приняли рабочий процесс, изложенный здесь .Проще говоря:

  1. Создать новую ветвь для каждого запроса на изменение, svn copy ^/trunk ^/branches/cr####
  2. Выполнять работу и фиксировать
  3. Регулярно объединяться с транком, svn merge ^/trunk
  4. Переключиться на транк и реинтегрировать svn merge --reintegrate ^/branches/cr####

Это прекрасно работало до недели назад.Теперь выполнение тех же шагов вызывает бесчисленные конфликты при слиянии, но с файлами, которые не были изменены локально.Например, скажем, кто-то еще создал ветку cr1234 и внес изменения в foo.c.Между тем, прежде чем ветка cr1234 была реинтегрирована в ствол, я создал другую ветку, cr5678.Теперь в моей ветке cr5678 я модифицирую bar.c и фиксирую ветку.В какой-то момент ветка cr1234 была реинтегрирована в транк, поэтому в транке есть обновление для foo.c, но не в моей ветке cr5678.Прежде чем я смогу реинтегрировать свою ветку cr5678, я выполняю слияние, как указано выше, svn merge ^/trunk.Вот странная вещь, foo.c будет рассматриваться как конфликтующий, хотя я этого не трогал.Это происходит для 80% + объединяемых файлов.Кроме того, часто такие же конфликты возникают при реинтеграции из ветви в магистраль.Это похоже на то, что svn должен быть в состоянии понять.

Это работало отлично в течение нескольких недель.Я подозреваю, что первая ветка, у которой были проблемы, имела svn переименования в этом.Я не уверен, произошло ли это или нет, но теперь кажется, что все испорчено.Я не вижу файлов со свойством svn: merginfo, поэтому я не знаю, почему существуют конфликты.

Мы все новички в Subversion, поэтому я боюсь, что мы каким-то образом повредили хранилище, и я не уверенкакой курс мы должны взять.Любые предложения, чтобы попытаться выяснить, что может вызвать конфликты, даже если слияние должно быть тривиальным?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...