Если вы всегда синхронизируете ветвь функции, прежде чем объединить ее. Почему вам действительно нужно использовать параметр --reintegrate
?
В книге Subversion говорится:
Однако при слиянии вашей ветки с магистралью, лежащая в основе математика совсем другая. Филиал вашей функции теперь является mishmosh как дублированных изменений сундуков, так и частных изменений ветвей, поэтому нет простого смежного диапазона изменений для копирования. Указав опцию --reintegrate, вы просите Subversion тщательно реплицировать только те изменения, которые уникальны для вашего ветки. (И на самом деле, он делает это, сравнивая последнее дерево стволов с последним деревом ветвей: результирующее различие - именно ваши изменения ветки!)
Таким образом, параметр --reintegrate
объединяет только те изменения, которые являются уникальными для ветки функции. Но если вы всегда синхронизируете перед слиянием (что рекомендуется для решения любых конфликтов в ветки функции), то единственными изменениями между ветвями являются изменения, которые являются уникальными для ветки функций, правильно? И если Subversion пытается слить код, который уже находится на целевой ветке, он просто ничего не сделает, правильно?
В сообщение в блоге, Марк Пиппард пишет:
Если мы включим эти синхронизированные ревизии, мы сместим обратно изменения, которые уже существуют в trunk. Это дает ненужные и запутывающие конфликты.
Есть ли пример того, когда сброс реинтеграции дает мне ненужные конфликты?