使用命令行在特定日期或变更集ID后在TFS中查找合并候选项

时间:2017-11-22 08:33:54

标签: powershell tfs

阅读文档here,我不清楚实现目标的正确方法是什么。

我想在Branch ABranch B的签到评论中对变更集与特定关键字进行毫无根据的合并。这两个分支共享同一个父分支,但不共享它们之间的父子关系。

但是,我只对在特定日期之后提交的更改集感兴趣, ID大于特定阈值的更改集。即,我在DD / MM / YYYY之后或在ID大于XXXXXX的变更集之间寻找合并候选者并不重要,只要我没有搜索整个历史记录。

如何从命令行执行此操作?

1 个答案:

答案 0 :(得分:0)

以下是如何操作:

$tf = get-item "c:\program files (x86)\Microsoft Visual Studio 12.0\Common7\IDE\TF.EXE"
$lastMergedChangeNumber = 123456
$changesetsToMerge= 
    & $tf merge /baseless /candidate $/path/to/source . /recursive | ? { $_ -like '*SearchPatternHere*' } | % { $_.Split()[0]} | % { $_.Substring(0,6) } | % { [int]$_ } | Where-Object {$_ -gt $lastMergedChangeNumber }
if ($customBranchChangesetsToMerge -eq "There are no changes to merge." -Or !$customBranchChangesetsToMerge) {
    echo "*** No changesets found to merge. ***"
    return 
}
etc.