Azure DevOps管道和Team Foundation Server工作流程

时间:2019-05-10 01:22:23

标签: git azure-devops azure-pipelines tfvc azure-repos

我们正在将Azure DevOps用于.NET源控件。我们使用Git和TFS工作流程来运营项目(前者是较新的工作,后者是遗留项目)。之所以会这样,是因为当Azure DevOps仅仅是TFS时,我们只有“ Source”根文件夹,其中包含用于不同类型软件的子文件夹,然后在每个文件夹中进行项目开发。这对于TFS使用的签入/提交过程的类型非常有效。现在有了DevOps和Git工作流程,我们不再使用一个名为Source的单个“ Root”存储库,而其中的文件夹分解了不同的解决方案,我们有代表每个不同软件解决方案的不同存储库。

对于GIT工作流程下的项目,我们可以放心地使用Azure管道来创建CI / CD发布过程。但是,我不确定如何将其用于基于TFS的存储库。在Azure DevOps门户中,我们的TFS存储库-即使它包含许多不同的解决方案/项目,在门户中都表示为称为“源”的单个“项目”。

这意味着我不清楚如何使CI / CD管道正常工作,因为我们只想为该\ Source项目中的某些项目构建管道。有人知道如何实现吗?如果我们简单地看一下Git项目,则每个项目都是独立且独立的,但是\ Source由文件夹和子文件夹组成,每个文件夹中都有项目。这不是可以检入和发布的庞大项目。我希望这是有道理的,也许对Azure DevOps中的这种“双重工作流”类型的源代码管理有一定经验的人可以发表评论?

1 个答案:

答案 0 :(得分:0)

您可以创建多个Azure管道,每个管道都查看TFVC存储库(Team Foundation版本控制)。然后,每个管道都配置有自己的“映射”,在其中必须非常明确地仅捕获为该管道构建解决方案所需的文件。

您可以使用包含(map)和排除(斗篷)定义工作区映射。您可以隐藏单个文件,但是上次我检查时必须手动输入它们的服务器路径。

enter image description here

下一步是配置CI过滤器以查看正确的路径。这可能与您的工作空间映射相同,但是我也看到了配置了更特定过滤器的情况。

enter image description here

您最终将为托管TFVC存储库的项目中的每个解决方案使用一个或多个管道。命名管道可能很重要。