文件夹转换为分支?

时间:2012-10-16 13:30:18

标签: tfs branch branching-and-merging tfs2012

在TFS(我们正在使用2012)中,为什么默认情况下将源文件夹转换为分支? Option

我真的不认为源是分支。这有什么优点/缺点呢?

3 个答案:

答案 0 :(得分:29)

在James Reed的回答中澄清一些术语。

重新:“我不认为来源是分支”

在生物树中, Trunk 不称为分支

在计算机术语中,branching relationship的两边都称为Branches。只有可视化选择将原始分支显示为生物树上的 trunk 。 (因为可视化工具是由我们的人们编写的,他们喜欢认为 [1st original] source branch作为生物树的 Trunk ,并且<{1>}作为分支关闭 Trunk 。)

在TFS 2008术语中,target branchBranchFolder与另一个branching relationship相同。在内部,它们都是Folder

在TFS(自2010年起)的术语中,folder objects是一个内部Branch,非常类似于branch object,其中包含大量额外元数据(以及不同的图标)。

re:为什么默认情况下将源文件夹转换为分支?

在几乎所有正常情况下,当您想分支中继时,您希望源folder object [对象]转换为Folder [对象],以便你拥有所有额外的元数据,这允许额外的可视化和操作只有Branch [对象]不可用。

限制是Folder [对象]可能不包含其他Branch [对象],但Branch [对象]可以包含Branch [对象] 。因此,有时候,在复杂的项目中,您可能需要将Folder [对象]转换回Branch [对象],这样您就可以将它放在更高的Folder [对象]中。

为此,请使用菜单命令文件/源代码管理/分支和合并/转换为文件夹。 (:右键单击上下文菜单,因为它很少需要。:)

如果在管理整个项目时,您发现需要/想要将Branch转换为Folder(尚未使用正常Branch创建branching relationship命令),使用菜单命令文件/源代码管理/分支和合并/转换为分支

答案 1 :(得分:19)

我不确定你的意思是“我不认为源是一个分支”根据定义,源文件夹一旦你从它创建一个分支就成为一个分支。目标文件夹也是一个分支,它是源分支的子代。

启用此功能没有任何缺点。无论您是否启用此功能,源和目标都将具有分支关系,您将能够合并两个分支之间的更改。

如果启用此框,并且能够在源和目标之间进行合并,您还可以使用Visual Studio中的分支可视化工具。当您想要了解代码在分支和合并关系之间如何流动时,这些工具非常有用。

答案 2 :(得分:0)

扩展James Reed的答案。 根据Microsoft关于TFS here的文档:

与“文件夹”相比,“分支”有两个主要优点:

  1. 查看分支层次结构的能力

  2. 能够跟踪您的变更集

分支文件夹或文件

尽管您可以分支文件夹或文件 我们建议您直接避免这种情况。否则,您将不会 能够查看您的分支层次结构或跟踪您的变更集。