C# 试图理解TFS 2017标签变更集

C# 试图理解TFS 2017标签变更集,c#,asp.net,tfs,C#,Asp.net,Tfs,我试图理解TFS 2017在构建/发布后创建标签时使用的“变更集”。举个简单的例子,我做了以下工作: 已创建主文件夹和开发文件夹 创建了一个TestWebApp项目,作为基线检入到Main 从Main创建了一个Dev分支 在Dev分支中进行了一些修改 将Dev分支合并回Main并签入 在测试周期中间需要一个修复程序,所以我回滚了DEV合并,做了一个热修复更改,并签入了主。 此时标记为Main以表示修补程序版本 重新合并来自Dev的更改 决定需要另一个热修复程序,所以我再次回滚Dev marge,

我试图理解TFS 2017在构建/发布后创建标签时使用的“变更集”。举个简单的例子,我做了以下工作:

  • 已创建主文件夹和开发文件夹
  • 创建了一个TestWebApp项目,作为基线检入到Main
  • 从Main创建了一个Dev分支
  • 在Dev分支中进行了一些修改
  • 将Dev分支合并回Main并签入
  • 在测试周期中间需要一个修复程序,所以我回滚了DEV合并,做了一个热修复更改,并签入了主
  • 此时标记为Main以表示修补程序版本
  • 重新合并来自Dev的更改
  • 决定需要另一个热修复程序,所以我再次回滚Dev marge,进行热修复程序更改并签入Main
  • 此时标记为Main以表示修补程序版本
  • 重新合并来自Dev的更改
  • 下面是我在TFS中所做更改集的屏幕截图:

    下面是我制作的标签的屏幕截图:


    我的问题是:为什么当第2版和第3版包含自Changeset 6以来所做的更改时,标签都显示Changeset 6?

    这是因为主文件夹中的大多数文件仍在Changeset 6中。如果在此过程中浏览更改的文件,请检查历史记录和标签,您会发现它指向最新的更改集


    我仍然不明白为什么在标记变更集11和16时选择了变更集6。如果单击标签并展开主文件夹,您将看到每个文件的变更集,大多数文件仍然具有变更集6,只有修改后的文件具有新的变更集。