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

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

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

Исходная иерархия ветки командного проекта

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

Иерархия веток нового командного проекта

Я хотел ветку "Team Project 2/Development/Development", которая ветвится из "Team Project 2/Main", и то же самое с "Release". Это оставляет мне два вопроса:

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

2 ответа

Решение

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

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

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

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

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

Примечание. В окне "Просмотр иерархии" вы не сможете увидеть ссылку соединения между ветвями, но с помощью "Мастера слияния управления источниками" вы сможете выбрать ветвь и выполнить слияние.

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

Правка 1: "Мастер слияния исходного кода" == В "Обозревателе исходного кода"> Щелкните правой кнопкой мыши нужную ветвь> Отделение и объединение> Слияние. В "Целевой ветке" вы сможете выбрать ветку.

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