質問

TFSの何百ものワークアイテムの同じフィールドを同じ値に更新する必要があります。手動で1つずつ更新するのではなく、バッチで行う方法はありますか?

役に立ちましたか?

解決

これは Excel で実行できます:

  1. 次の方法でExcelで作業項目を開きます。
    • チームエクスプローラーでクエリを右クリック-> Excelで開く
    • WIT結果ペインでいくつかのワークアイテムを選択し、右クリック-> Excelで開く
    • Excelを読み込み、チームを使用->インポートして定義済みクエリを読み込む
    • すでにTFSにバインドされている* .xlsファイルを開きます
  2. 一括編集を行う
  3. チームリボンの[公開]ボタンをクリックします

ここに画像の説明を入力

完全なドキュメント: Excelでの作業項目の管理(概要ページ;ロット&多くのリンクが含まれています)

で一括編集できますWebインターフェースも

Windowsコマンドライン

REM make Martin Woodward fix all my bugs
tfpt query /format:id "TeamProject\public\My Work Items" | 
    tfpt workitem /update @ /fields:"Assigned To=Martin"

Powershell

# make Bill & Steve happy
$tfs = tfserver -path . -all
$items = $tfs.wit.Query("
    SELECT id FROM workitems 
    WHERE [Created By] IN ('bill gates', 'steve ballmer')") | 
    % {
        

これは Excel で実行できます:

  1. 次の方法でExcelで作業項目を開きます。
    • チームエクスプローラーでクエリを右クリック-> Excelで開く
    • WIT結果ペインでいくつかのワークアイテムを選択し、右クリック-> Excelで開く
    • Excelを読み込み、チームを使用->インポートして定義済みクエリを読み込む
    • すでにTFSにバインドされている* .xlsファイルを開きます
  2. 一括編集を行う
  3. チームリボンの[公開]ボタンをクリックします

ここに画像の説明を入力

完全なドキュメント: Excelでの作業項目の管理(概要ページ;ロット&多くのリンクが含まれています)

で一括編集できますWebインターフェースも

Windowsコマンドライン

REM make Martin Woodward fix all my bugs
tfpt query /format:id "TeamProject\public\My Work Items" | 
    tfpt workitem /update @ /fields:"Assigned To=Martin"

Powershell

<*>.Open()

これは Excel で実行できます:

  1. 次の方法でExcelで作業項目を開きます。
    • チームエクスプローラーでクエリを右クリック-&gt; Excelで開く
    • WIT結果ペインでいくつかのワークアイテムを選択し、右クリック-&gt; Excelで開く
    • Excelを読み込み、チームを使用-&gt;インポートして定義済みクエリを読み込む
    • すでにTFSにバインドされている* .xlsファイルを開きます
  2. 一括編集を行う
  3. チームリボンの[公開]ボタンをクリックします

ここに画像の説明を入力

完全なドキュメント: Excelでの作業項目の管理(概要ページ;ロット&amp;多くのリンクが含まれています)

で一括編集できますWebインターフェースも

Windowsコマンドライン

REM make Martin Woodward fix all my bugs
tfpt query /format:id "TeamProject\public\My Work Items" | 
    tfpt workitem /update @ /fields:"Assigned To=Martin"

Powershell

<*>.Fields["priority"].value = 1

これは Excel で実行できます:

  1. 次の方法でExcelで作業項目を開きます。
    • チームエクスプローラーでクエリを右クリック-&gt; Excelで開く
    • WIT結果ペインでいくつかのワークアイテムを選択し、右クリック-&gt; Excelで開く
    • Excelを読み込み、チームを使用-&gt;インポートして定義済みクエリを読み込む
    • すでにTFSにバインドされている* .xlsファイルを開きます
  2. 一括編集を行う
  3. チームリボンの[公開]ボタンをクリックします

ここに画像の説明を入力

完全なドキュメント: Excelでの作業項目の管理(概要ページ;ロット&amp;多くのリンクが含まれています)

で一括編集できますWebインターフェースも

Windowsコマンドライン

REM make Martin Woodward fix all my bugs
tfpt query /format:id "TeamProject\public\My Work Items" | 
    tfpt workitem /update @ /fields:"Assigned To=Martin"

Powershell

<*> } # note: this will be much faster than tfpt since it's only one server call $tfs.wit.BatchSave($items)

他のヒント

$secpasswd = ConvertTo-SecureString $TfsPasswd -AsPlainText -Force
$mycreds = New-Object System.Management.Automation.PSCredential ($TfsUserName, $secpasswd)
Connect-TfsTeamProjectCollection -Server $TfsServerUrl -Collection $TfsCollection -Credential $mycreds
#Get-TfsTeamProject

Connect-TfsTeamProject -Project $TfsProjectName
$workItems  = Get-TfsWorkItem -Filter "[System.WorkItemType] = 'Bug' AND [System.AssignedTo] = '$TfsUserName'"
foreach ($workItem in $workItems)
{
    $tpc = $workItem.Store.TeamProjectCollection
    $id = $workItem.Id
    $store = $tpc.GetService([type]'Microsoft.TeamFoundation.WorkItemTracking.Client.WorkItemStore')
    $wi = $store.GetWorkItem($id)
    $projectName = $wi.Project.Name
    foreach($fldName in $Fields.Keys)
    {
        $wi.Fields[$fldName].Value = $Fields[$fldName]
    }
    $wi.Save()
}

複数の作業項目をバッチ更新する方法から詳細スクリプトをダウンロードできます。 PowerShellによるTFSでの

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top