В TFS, как я могу выбрать изменения для несвязанной ветви? - PullRequest
6 голосов
/ 13 сентября 2010

У меня очень грязная структура TFS, которую я пытаюсь очистить (спасибо моему предшественнику).Теперь у меня есть ситуация, когда мне нужно выборочно переносить наборы изменений из одной ветви в другую, когда у них нет родительско-дочерних отношений, и я не хочу, чтобы эти изменения проходили через их общую магистраль.Как я могу это сделать?

Я пробовал безосновательное слияние - В TFS, как мне выполнить безосновательное слияние на определенных наборах изменений? - что говорит мне, что не было никаких изменений для слияния.

Что я хочу достичь, это что-то вроде TFS: можно ли восстановить набор полок в другом месте? , кроме как с помощью набора изменений.

В GIT я думаю, что это будетбудь простым черриком.

Моя структура выглядит примерно так:

   Y-C1-C2-C3
  /
X-------------
    \
     Z

И вопрос в том, как мне получить C2 из Y в Z, не проходя через X?

Ответы [ 2 ]

3 голосов
/ 13 сентября 2010

У нас похожая ситуация, хотя, в нашем случае, мы осуществляем необоснованное объединение нескольких веток в «чистую» ветвь сборки.Единственный способ, которым мы смогли это сделать, - написать собственную утилиту, использующую API-интерфейс TFS.

Хорошая новость заключается в том, что вы должны сделать это менее чем за пару сотен строк кода.

Основные шаги:

  • Подключение к TFS
  • Получение экземпляра VersionControlServer (назовем его VCS)
  • Создание рабочего пространства
  • Выполните VCS.GetChangeset()
  • Выполните итерацию по Changes, чтобы получить список элементов, которые изменились
  • Выполните Workspace.Merge для каждого из элементов из вашей исходной ветвив ветку назначения.
  • Отметьте элементы в ветке назначения.
  • Удалить рабочее пространство
2 голосов
/ 16 ноября 2017

Это проще сделать с помощью Visual studio.

В Visual Studio используйте мастер слияния исходного кода для объединения несвязанных ветвей.

Имеется возможность объединения выборочных наборов изменений. Единственное ограничение заключается в том, что наборы изменений должны быть последовательными

...