2017-06-07 24 views
2

我有兩個分支,AppleBanana。在所有未合併的變更集Apple中,我只想合併那些包含術語MergeToBanana的登錄註釋。修改「tf歷史」命令只產生未合併的變更集

到目前爲止,這是我在我的PowerShell腳本:

Param (  
     [Parameter(Mandatory=$true)] 
     [String]$ChangesetComment 
     ) 

$tf = get-item "c:\program files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\TF.EXE" 

if ($ChangesetComment) { 
    echo "*** Looking for all changesets containing '$ChangesetComment' in their check-in comments. This might take a while. ***" 
    $changesetsToMerge = & $tf history $/TeamProject/Server/Apple /noprompt /recursive | findstr $ChangesetComment 
    $changesetNumbers = $changesetsToMerge | % $_.changesetnumber 

    echo "*** Now merging filtered changesets. ***" 
    Foreach ($c in $changesetNumbers) { 
     & $tf merge /version $_.c $/IMSDev/Closed/$ScdVersion . /r /noprompt  
    } 
} 

鑑於我的例子,ChangesetComment會當我運行該腳本設置爲MergeToBanana

我想修改我的tf history命令,使其僅產生在Apple還未被合併到Banana,讓我不必在整個歷史中搜索包含ChangesetComment在做的變更有關的變更信息的簽入評論。我該怎麼做?

任何其他建議如何改善我的劇本也是受歡迎的。

回答