So stellen Sie mehrere WorkItems in TFS aktualisiert
-
06-07-2019 - |
Frage
Ich muss das gleiche Feld für denselben Wert für Hunderte von Arbeitskräften in TFs aktualisieren. Gibt es eine Möglichkeit, dies in einer Stapel zu tun, anstatt sie nacheinander manuell zu aktualisieren?
Lösung
Sie können dies in tun Excel:
- Öffnen Sie die Arbeitsartikel in Excel, über:
- Klicken Sie mit der rechten Maustaste in Team Explorer -> in Excel öffnen
- Multi -Select Einige Arbeitselemente in einem Wit -Ergebnis -Bereich, dann mit der rechten Maustaste -> in Excel öffnen
- Laden Sie Excel, verwenden Sie Team -> importieren, um eine vordefinierte Abfrage zu laden
- Öffnen Sie eine *.xls -Datei, die bereits an TFS gebunden ist
- Machen Sie Ihre Bulk -Änderungen
- Klicken Sie auf die Schaltfläche Veröffentlichen im Teamband
Vollständige Dokumentation:Verwaltung von Arbeitsgegenständen in Excel (Übersichtsseite; viele und viele Links im Inneren)
Sie können auch in der Webschnittstelle in die Masse eingehen
Windows -Befehlszeile:
REM make Martin Woodward fix all my bugs
tfpt query /format:id "TeamProject\public\My Work Items" |
tfpt workitem /update @ /fields:"Assigned To=Martin"
Power Shell:
# make Bill & Steve happy
$tfs = tfserver -path . -all
$items = $tfs.wit.Query("
SELECT id FROM workitems
WHERE [Created By] IN ('bill gates', 'steve ballmer')") |
% {
$_.Open()
$_.Fields["priority"].value = 1
$_
}
# note: this will be much faster than tfpt since it's only one server call
$tfs.wit.BatchSave($items)
Andere Tipps
$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()
}
Sie können das Detail -Skript herunterladen So stellen Sie mehrere Arbeitselemente in TFS von PowerShell aktualisiert
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow