为新的云应用程序组织Visual Studio Team Services

时间:2015-12-11 22:48:51

标签: azure tfs version-control azure-devops alm

是否有针对新云应用程序组织Visual Studio Team Services的指南和最佳实践?我计划为REST服务创建一个WebAPI解决方案,一个用于移动客户端的Xamarin Forms解决方案,一个用于Web的MVC解决方案,最后是SQL脚本。理想情况下,我希望使用自己的源代码来考虑未来的应用。

Dev
     App1
           WebAPI
           XamarinForms
           MVC
           SQL
     App2
           ...
     ...
Test
Prod

另一种方法是按App创建项目

App1
     Dev
          WebAPI
          XamarinForms
          MVC
          SQL
      Test
          ...
      Prod
          ...
 App2
 ...

我也看到人们把一切都放在一个集合下的一个巨型项目中。因此,我们不是在第一个树中创建Dev,Test,Prod项目,而是将它们创建为文件夹。与第二棵树相同。为什么我不想创建多个团队项目?

我不是TFS专家,但我想从右脚开始。

P.S。我在SO上看到了一些类似的问题,但他们认为他们没有回答我的问题,尤其是关于不创建团队项目的部分。

1 个答案:

答案 0 :(得分:1)

Visual Studio Team Services(和Team Foundation Server内部部署)支持团队项目集合,团队项目和团队的概念。

TPC是最高程度的分离。目前,您在VSTS上获得一个DefaultCollection。在此集合中,您可以创建单独的团队项目在团队项目中,您有一个或多个团队。

目前的最佳做法表明,单个团队项目最容易使用。简而言之,这使您可以更轻松地共享代码,工作项和其他资产,同时仍然具有单独的积压和代码存储库。

有关此主题的更多详细说明,请参阅:

在您的场景中,我绝对会选择一个团队项目,然后是每个单独的应用程序的多个团队。在顶级团队中,您可以安排Epics and Features并将这些分发给实施团队。

如果我今天开始这样一个项目,我也会选择Git for Source Control。 Git和TFVC都受到支持,TFVC无处可去。但是Git确实有some advantages,我觉得它非常有吸引力。

关于您的文件夹结构。如果App1和App2需要一起发布,它们应该位于共享分支中。如果它们可以单独发布,它们应该有自己的分支。

ALM Rangers有一个关于版本控制的精彩文档,它解释了不同的分支模型。这是freely available on CodePlex