Проблема слияния транка в неизмененную ветку в SVN

У меня есть репозиторий SVN, где у меня есть следующая структура:

 +-trunk
 |   |
 |   +-dir1
 |   |
 |   +-dir2
 | 
 +-branches
 |
 +-tags

Я пытаюсь внести некоторые существенные изменения в dir1, поэтому я создал для него новую ветку, поскольку dir2 довольно тяжелый, и потребуется много времени, чтобы проверить его для каждой новой создаваемой мной ветви. Итак, я сделал это:

$ svn copy http://server/svn/project/trunk/dir1 http://server/svn/project/branches/branch1 -m "creating a new branch"
$ svn co http://server/svn/project/branches/branch1

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

$ cd branch1
$ svn merge http://server/svn/project/trunk/dir1

Когда я делаю это, я получаю что-то вроде этого:

C file1
C file2
[many C lines here]

Summary of conflicts:
  Tree conflicts: 114

Важной деталью является то, что я пытаюсь объединиться сразу после создания и проверки ветви, поэтому нет изменений в ветви или стволе.

Итак, что я здесь делаю не так? Почему я получаю все эти конфликты деревьев?

Заранее спасибо!

2 ответа

Я закончил тем, что нашел проблему.

Мой SVN-сервер < 1.5, а информация о слиянии веток хранится на сервере только с 1.5.

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

Мы кратко обсудим, как обрабатывать слияния, когда ваш репозиторий не поддерживает отслеживание слияний, в книге "Контроль версий с Subversion". См. Боковую панель "Синхронизация ветви без отслеживания слияний" в этом разделе книги ( http://svnbook.red-bean.com/en/1.7/svn-book.html).

Другие вопросы по тегам