Переименованные файлы с помощью метода Workspace.Merge

Я использую метод Workspace.Merge для выполнения слияния, но когда я указываю MergeOptionsEX.baseless, состояние переименованных файлов в исходной версии изменяется, чтобы создать ветвь в целевой версии.

Опция Baseless связывает две версии, если она не завершается. Таким образом, я изменил эту опцию на none, проблема переименованных файлов решена, но я думаю, что это решение не может установить связь между двумя версиями.

Workspace.Merge(sourcePathSpec, targetPath, versionFrom, versionTo, lockLevel,MergeOptionsEx.Baseless);

1 ответ

Метод Workspace.Merge используется для слияния источника с целью.

MergeOptionsEx представляет собой набор параметров слияния.

Когда вы устанавливаете MergeOptionsEx.Baseless который инструктирует сервер выполнять безосновательное слияние между элементами.

В TFVC вы можете объединяться только с непосредственно связанными ветвями (родительскими или дочерними).

Чтобы выполнить необоснованное слияние, например, используйте команду tf merge.

tf merge /baseless <<source path>> <<target path>> /recursive 

/ беспочвенны

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

Примечание. Необоснованные слияния не могут удалить файлы в целевой папке. Вы можете вручную перенести такие изменения.

I think this solution can't establish the link between two versions. Что здесь означают детали ссылки, вы только что имели в виду отношения слияния. Если между источником и целью нет отношения слияния, вы можете даже не выполнить слияние с MergeOptionsEx.None Перечень.

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