[英]How to change the Created By field on a Work Item in TFS?
有沒有辦法在TFS中的工作項目上更改“創建者”字段? 也許通過更改數據庫?
我希望能夠創建一個錯誤/功能/ PBI,然后將其更改為由向我報告該錯誤的工作人員創建。
這樣,我可以跟蹤向誰提交了更改請求,然后他們還將收到錯誤更新通知。
似乎您想為工作項設置偽造者。
由...制作
創建工作項的團隊成員的名稱。
參考名稱= Microsoft.VSTS.Common.CreatedBy
沒有內置方法可以更改此字段。 看看這個:
IsEditable
沒有
指示用戶是否可以(True)修改該字段(False)。 不可編輯字段的示例是系統設置的字段,例如ID,Revision, Created By和Changed By字段。
有關更多詳細信息,請參閱工作項字段屬性-您可以更改和不能更改的內容
直接在數據庫中更改值可以解決問題,但這不是推薦的方法。 這也與源代碼管理的概念背道而馳。
如果您只想在工作項更新時通知其他人。 解決方法是,建議您在工作項中使用關注功能。
當您要跟蹤單個工作項的進度時,請單擊“跟隨”圖標圖標。 這會通知系統在對工作項進行更改時通知您。
注意: 此功能可從TFS 2017及更高版本獲得。
僅當在啟用旁路規則的情況下通過API創建工作項時,才能覆蓋CreatedBy字段。 請參閱此鏈接以獲取詳細信息: 繞過規則進行更新 。
一個快速的解決方案是創建一個powershell腳本,以通過Rest API創建工作項。 供您參考的樣品:
#Input basic information
$collectionuri = "http://tfsserver:8080/tfs/DefaultCollection/"
$project = "ProjectName"
$workitemtype = 'Task'
$createdby = 'Display Name'
$title = 'Title'
#Create the workitem
$workitem = @(@{op="add";path="/fields/System.Title";value=$title},@{op="add";path="/fields/System.CreatedBy";value=$createdby})
$json = $workitem | ConvertTo-Json -Depth 100
$headers= @{"Content-Type"="application/json-patch+json"}
$url= $collectionuri + $project + '/_apis/wit/workitems/$' + $workitemtype +'?bypassRules=true&api-version=1.0'
$mycredentials = Get-Credential
$wi = Invoke-RestMethod -Uri $url -Method Patch -Credential $mycredentials -Body $json -ContentType 'application/json-patch+json'
Write-Host $wi
為什么要更新系統字段? 您可以添加一個新字段“ Initiator”( 添加或修改一個字段以跟蹤工作 )。 在創建時從“創建者”設置值。 然后在需要時進行更新。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.