Я создал ветку под названием "feature3" из моего сундука. Я делаю нулевые изменения в файлах в ветке "feature3". Также нет изменений в файлах на багажнике. Используя TortoiseCVS (TortoiseSVN 1.6.6, Build 17493 - 32 бит) против SVN (версия 1.6.3 (r38063)), я инициирую "Слияние" с выбранной опцией "Реинтегрировать ветвь".
Результат этой команды показывает 80 файлов, объединенных. Единственное, что изменилось в этих файлах, это свойство svn: mergeinfo. Но почему только эти 80 файлов? У меня есть сотни других файлов в проекте, у которых этого свойства не было.
Ниже приведен пример изменения свойства svn: mergeinfo в одном файле
До:
/trax/branches/current/Libraries/Security/Specifications/NotSpecification.cs:10292-10783 /trax/branches/feature 1/Libraries/Security/Specifications/NotSpecification.cs:11324 /trax/branches/feature 2/Libraries/Security/Specifications/NotSpecification.cs:11326 /trax/branches/int/Libraries/Security/Specifications/NotSpecification.cs:11232-11314 /trax/branches/next/Libraries/Security/Specifications/NotSpecification.cs:10156-10782 /trax/branches/trax -1.0.x/Libraries/Security/Specifications/NotSpecification.cs:10191-10291 /trax/branches/upgrade/Libraries/Security/Specifications/NotSpecification.cs:9964-10604 /trax/tags/trax -1.0.0/Libraries/Security/Specifications/NotSpecification.cs:10178-10190 /trax/trunk/Libraries/Security/Specifications/NotSpecification.cs:6672-9851,11232-11325
После
/trax/branches/current/Libraries/Security/Specifications/NotSpecification.cs:10292-10783 /trax/branches/feature 1/Libraries/Security/Specifications/NotSpecification.cs:11324 /trax/branches/feature 2/Libraries/Security/Specifications/NotSpecification.cs:11326 /trax/branches/feature 3/Libraries/Security/Specifications/NotSpecification.cs:11328-11334 /trax/branches/int/Libraries/Security/Specifications/NotSpecification.cs:11232-11314 /trax/branches/next/Libraries/Security/Specifications/NotSpecification.cs:10156-10782 /trax/branches/trax -1.0.x/Libraries/Security/Specifications/NotSpecification.cs:10191-10291 /trax/branches/upgrade/Libraries/Security/Specifications/NotSpecification.cs:9964-10604 /trax/tags/trax -1.0.0/Libraries/Security/Specifications/NotSpecification.cs:10178-10190 /trax/trunk/Libraries/Security/Specifications/NotSpecification.cs:6672-9851,11324-11327
Изменения состоят в том, что эта строка была добавлена
/trax/branches/feature3/Libraries/Security/Specifications/NotSpecification.cs:11328-11334
и последняя строка была изменена
/trax/trunk/Libraries/Security/Specifications/NotSpecification.cs:6672-9851,11324-11327
Я ожидал, что слияние приведет к объединению нулевых файлов. Почему SVN считает, что эти файлы необходимо объединить, и изменилось их свойство svn: mergeinfo? Есть ли способ исправить это?
Это случай, когда я должен удалить свойства svn: mergeinfo во всех 80 файлах? Я здесь ссылаюсь на здесь и здесь.
Этот тривиальный пример является частью более крупного исследования, в котором я создаю ветвь функции, делаю несколько изменений и затем пытаюсь объединить изменения обратно в магистраль. Тем не менее, слияние сообщает мне несколько конфликтов деревьев в этих же 80 файлах. Это очень расстраивает то, что я не могу использовать ветвление SVN из-за всех этих конфликтов деревьев.