【问题标题】:Team Foundation Server: Why is changeset history shared among separate projects?Team Foundation Server:为什么在不同的项目之间共享变更集历史记录?
【发布时间】:2013-05-18 12:56:27
【问题描述】:

我已经使用 TFS 几个月了,并且在 Web 界面上有几个单独的(不相关的)项目,并在 Visual Studio 2012 中链接了相关的项目。我遇到的异常情况(至少我是以这种方式感知它)是签入项目 A 的代码会增加所有其他项目的变更集序列号(例如,到 124),这样当项目 B 更改并签入时,它会获得下一个变更集编号(例如125)。对我来说,这很奇怪:如果项目 A 和 B 完全独立(除了我对两个项目使用相同的 TFS 帐户这一事实),为什么它们都共享一个共同的变更集历史序列?我在设置 TFS 时做错了吗?

谢谢!

【问题讨论】:

    标签: visual-studio-2012 tfs changeset


    【解决方案1】:

    变更集是整个版本控制树的快照——即$/。这是因为您的项目可能存在相互依赖关系;您可以在一个变更集中签入两个项目,并且该变更集必须是原子的。

    换句话说,您希望使用单个变更集提交一个项目中的两个文件的原因与您希望使用单个变更集签入两个项目中的两个文件的原因相同。

    【讨论】:

      【解决方案2】:

      不,那是对的。一件事不是另一件事,所有变更集都存储在一个地方,并且每个都与一个 ID 相关联。如果您希望同时检查多个项目/解决方案,您可以。到那时,每个项目单独的 id 将有一个真正的问题。

      【讨论】:

        【解决方案3】:

        从源代码控制的角度来看,团队项目并不是独立的。原因很简单 - 您可以从一个团队项目复制(保留历史记录)到另一个项目。

        因此,TeamProject1 的变更集将引用 TeamProject2 中变更集的某些内容。

        拥有独立历史会很困难。

        【讨论】:

          猜你喜欢
          • 2011-06-27
          • 1970-01-01
          • 2011-01-14
          • 2011-04-18
          • 2016-05-27
          • 1970-01-01
          • 2018-03-10
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多