SVN разные деревья сливаются - PullRequest
5 голосов
/ 24 ноября 2010

Допустим, у меня в SVN есть A: / A_Project / trunk / A и B: / B_Project / trunk / B. Я хочу объединить A с B и сохранить его в B. Я использовал параметры «слияния двух разных деревьев» в моем TortoiseSVN GUI. Все хорошо, кроме финальной ревизии, в которой нет журнала изменений дерева A!

Вопрос в том, как объединить два разных дерева и сохранить журналы обоих в окончательной редакции?

Спасибо за вашу помощь!

Ответы [ 3 ]

5 голосов
/ 24 ноября 2010

Честно говоря, я предполагаю, что Tortoise просто создает рабочую копию ветви B, вставляет код из дерева A и объединяется, как если бы это был всего лишь один большой пример кодирования.

Я не верю, что SVN изначально поддерживает слияние между проектами , потому что номера ревизий (и, следовательно, прикрепленные журналы фиксации) явно конфликтуют, поскольку оба проекта имеют ревизии 1..n.

Так что я не знаю, возможно ли то, что ты хочешь сделать.

Подробнее об использовании интерфейса командной строки для слияния. Рекомендую Библию Subversion:

http://svnbook.red -bean.com / о / 1,5 / svn.branchmerge.html

0 голосов
/ 24 ноября 2010

Subversion не поддерживает слияние двух деревьев в ревизию, которая сохраняет историю обеих сторон слияния.

Это довольно принципиальное различие между моделью Subversion и некоторыми другими системами контроля версий, такими какMercurial или Git.

Современные версии Subversion могут имитировать это с помощью свойства mergeinfo, но оно не встроено изначально.

0 голосов
/ 24 ноября 2010

Поскольку вы сделали слияние (дерево или файл, не имеет значения), история из A не всегда доступна для просмотра. Однако, если вы сделали это слияние с клиентом Subversion, поддерживающим 1.5.x или новее, и отметили его в свойствах svn: merge-info, можно просмотреть историю A. В командной строке с помощью команды svn log и опции -g вы можете просмотреть историю файла или дерева, включая пути, которые были объединены несколько раз.

Это можно сделать и с помощью TortoiseSVN. См. эту заметку о выпуске из выпуска TortoiseSVN 1.5.x о том, как просмотреть историю слияний с обычной историей.

...