如何在两个 TFS 标签之间查找变更集(用于发行说明/变更日志)

Posted

技术标签:

【中文标题】如何在两个 TFS 标签之间查找变更集(用于发行说明/变更日志)【英文标题】:How to find changesets between two TFS labels (for Release Notes / Change log) 【发布时间】:2014-11-21 19:45:02 【问题描述】:

我想制作发行说明以显示两个不同 TFS 构建之间发生的更改。我们的构建会自动标记用于生成构建的版本。

我熟悉 tf hist 命令,并在Show all changesets between two labels 中看到了建议。我已经看到接受的答案建议使用日期而不是标签来使用命令。明白了。

我真的很喜欢运行时的输出(将详细结果转储到文本文件):

D:\workspace>tf hist . /recursive  /version:D11/20/2014~D07/24/2014 /noprompt /format:Detailed > hist.txt

但是,如果我为 /version 参数使用标签,我将永远无法看到变更集结果...标签

D:\workspace>tf hist . /recursive /version:LMyLabelA~LMyLabelB 

...但是很多标签:

    在为 /version 使用标签时,我的 tf hist 命令未显示变更集的原因是什么? 我应该尝试其他方法吗?

编辑: 我看到了一些不能完全解决我的问题的额外问答: https://social.msdn.microsoft.com/Forums/vstudio/en-US/8fa9ec63-316a-4ad7-a919-5afd86da87ad/missing-changeset-when-tf-history-by-label-range?forum=tfsversioncontrol

https://social.msdn.microsoft.com/Forums/vstudio/en-US/5efbf54f-ac46-4569-973d-592adefa7e37/get-list-of-files-changed-after-a-specific-label?forum=tfsversioncontrol

https://social.msdn.microsoft.com/Forums/vstudio/en-us/bc9328c2-f73f-4d41-b8f7-0a196a7fe7de/odd-output-from-tf-hist-using-a-label-in-version-spec?forum=tfsversioncontrol

【问题讨论】:

【参考方案1】:

我错误地使用了 tf hist。

关键是 /version 中标签的顺序。以下工作正常,假设在 LabelB 之前应用了 LabelA。

D:\workspace>tf hist . /recursive /version:LMyLabelA~LMyLabelB

不幸的是,我运行的命令是:

D:\workspace>tf hist . /recursive /version:LMyLabelB~LMyLabelA

【讨论】:

以上是关于如何在两个 TFS 标签之间查找变更集(用于发行说明/变更日志)的主要内容,如果未能解决你的问题,请参考以下文章

如何检查TFS服务器上是否有新的更改?

如何查找未链接到工作项的TFS更改集

为啥用于获取 TFVC 变更集的 TFS Rest API 仅返回 256 个项目?

如何撤消 TFS 2010 中的变更集回滚?

在 TFS 中,如何更正现有变更集上工作项的链接

在 TFS 中,如何对特定变更集进行无根据的合并?