子文件夹中的Teamprojects不是root用户

时间:2011-09-26 11:05:18

标签: version-control tfs team-project

我尝试为新的TFS存储库设置一个新结构,并尝试将团队项目映射到这样的结构中的子文件夹:

  • TRUNC
    • (TeamProject)Proj1
      • SubProj1
      • SubProj2
      • SubProj ...
    • (TeamProject)Proj2
      • ...
    • (TempProject)...
    • 全局
  • 推出
    • Proj1
      • SubProj1 V3.5
        • Proj1(分公司)
          • SubProj2(分公司)
          • SubProj4(分公司)
        • 全局(分公司)
      • SubProje1 V3.6
        • Proj1(分公司)
          • SubProj2(分公司)
          • SubProj4(分公司)
        • 全局(分公司)
      • SubProje2 V2.1
        • Proj1(分公司)
          • SubProj1(分公司)
          • SubProj7(分公司)
        • 全局(分公司) ...
    • Proj2  ...
  • 第三方党员
    • LIB1
    • LIB2

这是关于我们迄今为止在differenc scc系统中使用的结构,我们尝试将它们全部联合到新的TFS存储库。

在我们看来,这种结构有几个优点:

  • TFS(工作项目,构建)的团队项目功能是为公司中的每个团队分离的,并且构建列表不会太长,无法搜索以查找特定子项目。
  • 要将存储库映射到本地硬盘驱动器,我们只需要同步存储库的“Trunc”路径和“第三方库”路径,并避免将过去15年的所有分支加载到每个硬盘(垃圾十亿字节) )。 Trunc主子文件夹仅包含我们每个人每天都使用的活动源代码。
  • 要修补/重新编译certail分支,我们只检查版本中的特定子文件夹(即/ Release / Proj4 / SubProj2 V4.5 / *),这只是几兆字节的大小。重建后,我们可以从硬盘中删除此子文件夹的映射...

我在网上看了很多,但似乎TFS的结构太严格了,团队项目只能位于存储库的根目录中。那可能吗?有没有办法在一个位置管理团队项目并在另一个位置处理发布分支?那么从几个团队项目中使用的自行开发的公共库呢?

在我们的存储库(几个)中,有很多项目被分成不同的主题。我想为主题制作团队项目,并使用单独的.sln文件管理团队项目中不同子文件夹的实际项目。但我真的想从所有活跃的来源中分离发布分支......

有办法解决这个问题吗?


感谢您的回答,我很害怕听到您的回答......

我们有几个团队项目使用相同的基础库。在发布分支中,我们通常也会分支这些基本库,以便拥有这些库的稳定版本。在TFS中,当我使用不同的团队项目进行应用程序和一个用于基础库的sepparate团队项目时,我是否可以创建我的App1的发布分支,即“App1 V3.2”,其中我的应用程序的路径分支另外使用过的图书馆的路径?或者,每当我创建任何应用程序的发布分支时,我是否也必须分支基本的lib团队项目?那么我怎样才能找到正确版本的App1到我的基础lib3和基础lib5的正确版本?

为什么MS的所有内容都必须如此复杂?乍一看它是一个很酷的系统但是当你尝试使用它时,事实证明你必须完全改变你的工作方式......

我是否可以仅使用TFS作为scc,如perforce,subversion或其他?有没有办法摆脱团队项目根级别?或者有没有办法定义子团队项目?

好的,当我决定组建一个大团队时,即“开发”,并且有一个类似于我的初稿的子文件夹结构,那么项目/构建呢?我可以将ie构建放在代表实际应用的groupb中(我在草稿中将其命名为子项目)吗?另外,我们会在“开发”团队项目中列出一系列构建数据,以及数千个属于公司完全不同团队的项目...

1 个答案:

答案 0 :(得分:3)

团队项目确实只在根级别进行版本控制。但你想要做的是创建多个分支。 TFS完全可以实现这一点。好的阅读是branching and merging guide on codeplex

限制您要在本地计算机上下载的内容,即to be defined in your workspace

希望这会对你有所帮助。如果没有,请告诉我您需要哪些信息。