Поделиться через


Обновление определений построений на ответвленных командных проектах

Обновлен: Ноябрь 2007

Разветвление Team Foundation (подсистема контроля версий) копирует все папки и файлы, включая папку TeamBuildTypes, из предыдущей ветви в конечную ветвь. Дополнительные сведения см. в разделе Ветвление и слияние в системе управления версиями Team Foundation. Существует два сценария разветвления, которые влияют на типы командных построений различным образом:

  • Частичное разветвление Если папка командного проекта, которая содержит несколько решений, имеет только одно или несколько разветвленных решений.

  • Полное разветвление Если папка командного проекта разветвляется полностью.

При частичном разветвлении определения построений, которые содержатся в папке TeamBuildTypes, все еще будут действовать в исходной конфигурации. Другими словами, они будут запускаться для исходной ветви. При частичном разветвлении рекомендуется создавать новые определения построений, если это необходимо, которые указывают на решения в исходной ветви и в новой ветви. Дополнительные сведения см. в разделе Создание определения построения. Хотя можно изменить существующие файлы TFSBuild.proj в новой ветви таким образом, чтобы они указывали на соответствующие пути, создавая новые определения построений, вы сохраняете исходные определения построений, которые все еще можно использовать в предыдущих конфигурациях, действующих до разветвления.

Как и при частичном разветвлении, во время создания полной ветви в командном проекте создается копия исходной папки TeamBuildTypes в Сред. Командный обозреватель. Определения построений, которые содержатся в папке новой ветви, не будут автоматически запускаться для новой ветви. Как и при частичном разветвлении, они будут запускаться для путей исходной ветви. В этом случае рекомендуется изменить пути к решениям в файлах TFSBuild.proj, чтобы они указывали на правильную папку.

Необходимые разрешения

Чтобы обновлять определения построения в разветвленных командных проектах, необходимо иметь разрешение Администрирование разрешениями сборки со значением Разрешить. Кроме того, необходимо иметь разрешение Извлечь со значением Разрешить для папки Team Build Types. Дополнительные сведения см. в разделе Разрешения Team Foundation Server.

Процедура

Редактирование файла TFSBuild.proj для обновления путей определения построений из-за операции полного разветвления

  1. Чтобы отредактировать существующее определение построения и обновить путь к решению, извлеките соответствующий файл TFSBuild.proj.

    Дополнительные сведения см. в разделе Получение локальной копии файлов с сервера системы управления версиями.

  2. Щелкните правой кнопкой мыши файл TFSBuild.proj в системе управления версиями и выберите команду Извлечь для изменения.

  3. Дважды щелкните файл TFSBuild.proj, чтобы открыть его в Visual Studio.

  4. В файле TFSBuild.proj найдите тег <ItemGroup>. В теге <ItemGroup> обновите путь в каждом теге SolutionToBuild, как показано в следующем примере.

    Исходный файл, который копируется из папки командного проекта Alpha:

    <ItemGroup>
        <SolutionToBuild Include="$(SolutionRoot)\Alpha\path\Solution1.sln" />
        <SolutionToBuild Include="$(SolutionRoot)\Alpha\path\Solution2.sln" />
    </ItemGroup>
    

    Изменения, которые отражают новую ветвь Beta:

    <ItemGroup>
        <SolutionToBuild Include="$(SolutionRoot)\Beta\path\Solution1.sln" />
        <SolutionToBuild Include="$(SolutionRoot)\Beta\path\Solution2.sln" />
    </ItemGroup>
    
  5. Сохраните файл TFSBuild.proj и верните его в систему управления версиями.

    Изменения обновленных путей в файле влияют на последующие определения построений. Если файл TFSBuild.proj связан с несколькими определениями построений, обновленные пути повлияют на все определения.

См. также

Другие ресурсы

Выполнение построений в Team Foundation Build