TFS - 从标签创建分支,对共享项目的影响

TFS - Creating a Branch from Label, Impact on shared projects

我们的 TFS 源代码控制是这样设置的:

  1. TFS 项目
    • 解决方案
      • WebApp1解决方案
      • WebApp2解决方案
    • 图书馆
      • 共享库1
    • Web 应用程序
      • WebApp1
      • WebApp2

当我打开解决方案 WebApp1Solution 时,它会使用库和 Web 应用程序文件夹中的项目加载我的工作区。

我想为 Web 应用程序和所有共享库暂停我当前的工作区环境,并从较早的标签(我们的最后一次部署)开始处理此代码的特定版本。我们还没有任何分支。

根据我的阅读,我认为这些是我的选择:
1. 搁置对解决方案的未决更改并获取解决方案的特定标签版本。 当我重新检查任何更改时会发生什么?
2. 从特定标签版本在源代码管理中创建一个分支。 我是否必须在不同位置的所有文件夹上创建分支?我如何在当前代码和新分支代码之间来回切换?

如有任何帮助或建议,我们将不胜感激!谢谢!

只需在 TFS Project 文件夹中创建一个分支到开发文件夹中。实际上,您应该在所有开发过程中正常执行此操作。你的主线分支不应该包含除了你的生产可部署代码库之外的任何东西。您应该始终能够获得最新的主线和构建,并且 运行 作为生产最终产品。

所有 developers/teams 开发人员都应该有自己的 TFS 文件夹,他们可以在其中从主线分支、进行更改、测试等...然后一旦通过所有批准,将其合并到主线并销毁您的开发线。

至于 "switching" 你的分支是一个独立于你的主线的文件夹。您可以在 Visual Studio 的不同实例中同时打开两者,就像一次打开两个解决方案一样。分支从分支点创建 folder/solution/project 结构的副本。然后,当您将其合并回来时,它会报告差异并尝试合并。如果存在冲突,系统将提示您查看并解决它们。大多数时候 TFS 在自动解决方面做得很好,但我总是在选择解决方法之前仔细检查所有冲突。