当我在 tfs 2010 中跟踪变更集时,然后在分支可视化中,我只能看到选定的变更集。然而,在整个网络的示例中,我看到在层次结构和时间轴视图中显示了多个变更集。任何想法?
我得到的是一个主分支,然后我创建了一个开发分支。然后我在开发分支上执行两个变更集。现在,当我在 dev 分支上查看历史记录并选择任何一个变更集并执行Track Changeset时,它只向我显示该变更集,这有点奇怪,因为在时间线视图中我应该能够一次看到多个变更集范围。任何想法?
纳比尔
纳比尔法里德,
您现在可能已经弄清楚了,但这可能对其他人有用。您正在执行的活动称为“跟踪变更集”,因此根据它的默认性质和名称,它正在跟踪单个变更集。在我看来,在时间线视图中我可以看到合并候选的变更集与单个跟踪的变更集相比,这似乎也很直观,但这不是它的运作方式。它仅显示单个变更集的跟踪。
在某些情况下,跟踪的变更集已合并到分支中,而不是在分支中看到单个变更集,而是在一个或多个分支中显示多个变更集,并且通常带有 *。当正在跟踪的变更集在一次合并和签入操作中将变更集中的一些文件合并到目标中,并且变更集中的部分或全部剩余文件在第二次(或更多)合并下合并到目标时,就会发生这种情况和值机操作。
快速浏览一下 John Bowen 的这篇博文。他有一个很好的例子,它显示了一个被跟踪的变更集合并到一个父目标分支中,因为多个变更集组成了被跟踪的变更集中文件的每个子集。他还展示了如果它们也通过多个变更集从该父级前向集成到另一个子级中,那么情况会如何。 可视化跨 TFS 分支的更改
如果您在 dev 上的变更集尚未合并回您的主分支,则没有什么可跟踪的。只有作为合并操作的结果,您的开发更改才会与另一个变更集建立关系(在您的情况下,这将是提交给主分支的变更集)。
这就是变更集跟踪的目的,以帮助您可视化跨分支的变更传播。如果您需要验证特定分支是否已收到您在另一个分支上所做的更改,这将非常有用。
(要注意的一件事是选择轨道更改时,在随后的选择分支对话框中,选择您想在可视化中看到的所有分支。可能就是选择与您的启动更改相关联的分支,然后选择您不会在其他分支上看到相关的变更集)。