2017-03-19 17 views
0

我要找就如何落实在TFS VS项目结构的类层次结构类型的一些想法和建议。 具体来说,我想要有一个“基础”项目,其中将包含项目其余部分将继承的所有常见功能。在“基础”项目中需要进行更改时,应该比较容易将这些更改传播到基于此“基础”项目的其余项目。TFS结构为“基地”和“导出”项目

显而易见的方法是从这个“基础”项目中分支其他项目,并在发生变化时合并这个根项目中的树,但是我从未尝试过这种方法,并且希望听到某人尝试了类似的东西在此之前或与TFS丰富足够的经验,能够指出其固有的问题,或者这样的想法的陷阱......

+0

如果你投票关闭,请点我到这个问题会更适合的地方。 Porgrammers stackexchange不缝是那个地方... –

+0

你使用TFVC或Git的源代码控制? –

+0

我正在使用TFVC。 –

回答

1

在源代码控制的项目实际上是文件夹。所以你的问题在某种程度上与如何在TFS中构建文件夹相同。

你的基地项目是在分支的一些主要的概念,它是作为你的主源代码树的容器文件夹,伴随项目工件,如设计文档,脚本和测试用例一起根文件夹。主文件夹通常还包含您的Visual Studio解决方案(.sln)文件。

在TFS你可以convert a folder to a branch。然后你只需要你的基地项目转移到其他项目。有了分支关系之后,您将能够合并两个分支之间的更改。另外你也可以使用分支来实现以下目标:

  • 在同一代码库管理由多个团队并行工作,这是由不同的变化引入到代码库
  • 采取
  • 隔离风险快照,然后支持后续的孤立的变化(例如,创建一个发布分支)

虽然仍可以分支与合并在文件夹中,您的团队的最佳做法是仅在分支机构之间进行分支和合并。

当你执行分支操作,分支机构相对于文件夹具有重要的优势。分支机构支持版本控制功能,可以为分支机构结构和变更集合的位置提供额外的可视性。 (有关更多信息,请参阅以下精彩链接:Visual Studio TFS Branching Guide

对于固有问题或此类想法的缺陷,有一件事是您可能必须在得到,检入,合并或取消搁置时resolve conflicts。另一件事是许可。最好避免每个人都有权将“派生”项目的变更合并回“基础”项目。


除了您可以在同一个团队项目中创建多个团队,您可以将它们嵌套以促进层次结构。如果你有兴趣,你可以查看这个blog,它显示了如何配置它。