Новый командный проект из существующего, разветвленного проекта - как сохранить пути ветвления? - PullRequest
3 голосов
/ 20 октября 2011

У меня есть существующий командный проект, созданный с помощью готового шаблона процесса MSF для Agile 5.0.С тех пор мы стандартизировали настроенный шаблон Microsoft Scrum 1.0.Я только что создал новый командный проект, используя наш текущий шаблон, на основе существующего проекта. Дальнейшая работа не будет выполняться в исходном командном проекте.

В этом существующем командном проекте используется "базовый" шаблон ветвления из Руководства по ветвлению ALM Ranger:

Original Team Project Branch Hierarchy

При создании нового проекта я воспользовался возможностью начать новый проект путем отделения от оригинала.Результат не тот, что я имел в виду:

New Team Project Branch Hierarchy

Мне нужен филиал «Team Project 2 / Development / Development», который ветвится из «Team Project 2 / Main»,и то же самое с «Release».Это оставляет мне два вопроса:

  1. Есть ли что-то, что я должен был сделать по-другому, чтобы получить желаемую структуру?
  2. Есть ли что-то, что я могу сделать сейчас , чтобыизменить новую (плохую) структуру на ту, которую я хочу?

Ответы [ 2 ]

2 голосов
/ 20 октября 2011

Чтобы получить структуру, которую вы хотели, я думаю, вам нужно было бы сделать следующее:

  • Создайте новый командный проект с пустой областью управления исходным кодом, а не с ветвлением.
  • Затем в TP1 ветвь Main к TP2 / Main (или «промежуточная», а затем в main) вручную
  • Затем создайте ветки для разработки / разработки и выпуска / выпуска с новой главной

Чего это не делает, так это переноса вашего старого Dev и выпуска веток. Чтобы перенести любые изменения из них в вашу новую структуру, вы должны были бы предварять весь этот процесс слияниями обратно в TP1 \ Main. Очевидно, что это немного не идеально, если вы хотите сохранить старый «релиз» замороженным. В этом случае вы, вероятно, захотите развернуть это явным образом в новую область TP2 / Release / Release и заметить, что оно пришло из старого проекта. Тогда вы могли бы установить новое отношение ветвления к TP2 / Main только в новых версиях.

Что касается "Что я могу сделать сейчас?" Я думаю, что ответ, нет, не что иное, как что-то очень радикальное, например, начать этот процесс заново или просто закрыть существующие ветви и переразветвляться, используя приведенные выше рекомендации.

1 голос
/ 26 апреля 2012

Чтобы получить желаемую структуру, после создания нового командного проекта необходимо выполнить Безосновное слияние .Необоснованное объединение используется для объединения ветвей, которые не имеют отношения.После выполнения слияния базовых пользователей Tfs установит взаимосвязь между ветвями.

Примечание. В окне «Просмотр иерархии» вы не сможете увидеть соединение между ветвями, но через«Мастер слияния исходного кода», вы сможете выбрать ветвь и объединить.

В вашем случае вы можете выполнить слияние базовых классов между «xxx2 / Main» и «xxx2 / Development / Development» и другиммежду «xxx2 / Main» и «xxx2 / Release / Release».После выполнения безосновательного слияния TFS создаст связь между ветвями, и вы получите свою структуру.

Редактировать 1: «Мастер слияния исходного контроля» == В «Обозревателе исходного кода»> Щелкните правой кнопкой мышитребуемая ветка> Banching and Merging> Merge.В «Целевой ветке» вы сможете выбрать ветку.

...