代码之家  ›  专栏  ›  技术社区  ›  Clarence Klopfstein

TFS中的分支与货架

  •  22
  • Clarence Klopfstein  · 技术社区  · 15 年前

    我过去一直使用SVN,现在我们已经越过了项目的初始阶段,我们需要为将来的增强找出分支过程。

    在阅读本文时,我们看到TFS有搁置。

    它们是如何比较的?每个都有什么大问题?

    一般来说,哪一个是首选,为什么?

    8 回复  |  直到 11 年前
        1
  •  21
  •   fwalch    15 年前

    搁置集是按用户的不同存储在源代码管理中的-不可能合并搁置集,没有历史记录等。唯一可能的操作是取消搁置;执行此操作时甚至不能合并文件。因此,我们只将它用作尚未完成的事情的临时存储,因此无法签入分支。

    因此,您应该使用branches;-)可能是一个主要的分支和不同的开发分支来修复特性和错误。

        2
  •  11
  •   Jeremy Samuel    15 年前

    搁置和分支的概念不同。

    分支就是取一个代码库并“拆分”它,基本上就是复制它。开发团队可以在自己的分支上工作(例如),然后所有的更改可以合并回一个原始分支。分支只能合并到TFS中的父分支中。

    搁置允许开发人员将代码签入到源代码管理系统中的“搁置”。代码没有签入到主分支。如果一个构建管理器或另一个开发人员“得到最新的”,那么在默认情况下他将不会得到搁置的代码。与所有其他代码一样,这个架子安全地存储在源代码管理中,只是不在分支中。其他开发人员可以把架子拉下来看效果。在某个时刻,更改将被签入到主分支中,并将成为变更集的一部分。

    我建议这本书: http://www.amazon.com/Team-Foundation-Server-2008-Action/dp/1933988592/ref=sr_1_1?ie=UTF8&s=books&qid=1263417920&sr=8-1

    它对搁置、合并和各种分支模型有一个非常简单但有效的解释。

        3
  •  7
  •   Bruno Martinez    15 年前

    避免上架。您将始终在较新版本的文件上还原搁置,并丢失所有已提交的更改。只有当你开始在一个稳定的分支上工作并且意识到所需的变化比预想的要大时,才使用架子。然后搁置您的工作,创建一个分支,然后取消搁置。

        4
  •  5
  •   Randy Minder    15 年前

    排架和分支是完全不同的两件事。搁置允许您将所有更改存储到TFS中,但实际上它们没有签入任何特定的分支。您所做的更改只是以给定的名称保存。这实际上非常有用,因为它是进行代码检查的一个很好的方法。我可能更改了10个不同的文件。我将使用给定名称创建这些更改的搁置集。然后我会请其他人检查我的搁架集。然后我可以取消搁置这些更改或删除搁置集。

    分支是一个过程,通过这个过程,您可以完整地复制一个代码主干,并给它一个名称和位置。然后您可以根据代码分支签入/签出/合并。这在处理应用程序的下一个版本时非常有用。您可以创建一个分支来处理新特性。

    下面是对搁置集的一个很好的解释: http://msdn.microsoft.com/en-us/library/ms181403(VS.80).aspx

        5
  •  5
  •   Jacob Seleznev    15 年前

    搁置集是挂起的更改、注释和相关工作项的集合。

    情节:

    • 备份
    • 临时移动更改以处理其他问题
    • 远程代码检查
    • 伙伴建立或协调更改

    当开发团队需要同时处理一个项目的两个不同副本时,就需要一个分支。

        6
  •  2
  •   Mihai Iorga    12 年前

    在其他分支上取消搁置不是TFS的默认功能。

    要在其他分支上取消搁置,您需要遵循以下说明 blogpost

    这意味着从VS库安装TFS2010电动工具。

        7
  •  1
  •   Chris    15 年前

    分支,是主分支的副本。你可以用一个分支来表示尝试做某件事的想法。这很好,因为如果出了问题,您可以丢弃原始文件,就像删除文件的副本一样。如果一切顺利的话,你把分支合并回原来的分支,说“主”。

    排架类似于临时文件夹。您可以使用它们进行代码检查,或者像我们一样,或者如果您需要修复某个问题,那么它在TFS中并进行备份。您可以搁置正在处理的任何代码(给它一个标签),然后恢复到main。当你完成后,你就把主架换成了架子,生活继续,没有停止。

        8
  •  0
  •   Robert White    11 年前

    如果由于某种原因不能提交更改,可以搁置更改。然后可以选择保留本地更改(即在本地保留搁置的副本)或在本地还原到当前版本(而更改仅存在于搁置的副本中)。如果将更改保存在本地,则搁置是将代码版本保存在存储库中并避免本地磁盘崩溃的好方法。

    此外,当一个人做了许多尚未签入的更改,并且希望在开始一个“危险和复杂”的编码实验之前保留该版本时,搁置是有用的。如果实验结果不好,而你想放弃它,你可以简单地取消搁置的副本。如果实验成功的话,你可以简单地删除这个小棚,或者让它默默无闻。

    推荐文章