匯入、匯出和管理工作項目類型

Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019

重要

針對內部部署 XML 進程模型,您可以使用 witadmin 來列出、匯入、匯出和修改項目的進程。 針對繼承和託管的 XML 進程模型,您只能使用 witadmin 來列出和匯出進程資訊。 如需程式模型的概觀和支持專案,請參閱 自定義您的工作追蹤體驗

您可以使用下列 witadmin 命令來管理專案的工作項目類型:

  • destroywitd:終結工作項目類型,並在不復原的情況下永久終結該類型的每個工作專案。
  • exportwitd:將工作項目類型的定義匯出至 XML 檔案,或匯出至 [命令提示字元] 視窗。
  • importwitd:將工作項目類型從 XML 定義檔匯入專案。 如果已有相同名稱的工作項目類型存在,新的工作項目類型定義會覆寫現有的工作項目類型。 如果工作專案類型不存在,則會建立新的工作項目類型。 若要驗證定義工作項目類型的 XML,但不會匯入檔案,請使用 /v 選項。
  • listwitd:在命令提示字元視窗中,顯示指定專案中的工作項目類型名稱。
  • renamewitd:變更特定專案中工作項目類型的顯示名稱。 執行此命令之後,此類型的工作項目會顯示新的名稱。

若要深入瞭解如何使用工作項目類型來追蹤工作,請參閱 在 Azure Boards 使用者劇本、問題、Bug、功能和 Epic 中追蹤您的工作專案。

witadmin執行命令行工具

若要執行 witadmin 命令行工具,請開啟已安裝 Visual Studio 的命令提示字元視窗。 witadmin命令行工具會安裝任何版本的 Visual Studio。 您可以安裝免費的 Visual Studio Community 或 Visual Studio Team Explorer 版本來存取此工具。

注意

若要連線到 Azure DevOps Services,建議您使用最新版的 Visual Studio 或 Visual Studio Community。

注意

若要連線到內部部署伺服器,建議您使用與 Azure DevOps Server 相同的或更新版本的 Visual Studio。 例如,如果您連線到 Azure DevOps Server 2019,請從 Visual Studio 2019 版本連線到您的專案。

針對 Visual Studio 2022

%programfiles(x86)%\Microsoft Visual Studio\2022\Community\Common7\IDE\CommonExtensions\Microsoft\TeamFoundation\Team Explorer

或或 ProfessionalEnterprise 取代 Community,視您安裝的版本而定。

針對 Visual Studio 2019

%programfiles(x86)%\Microsoft Visual Studio\2019\Community\Common7\IDE\CommonExtensions\Microsoft\TeamFoundation\Team Explorer

或或 ProfessionalEnterprise 取代 Community,視您安裝的版本而定。

針對 Visual Studio 2017

%programfiles(x86)%\Microsoft Visual Studio\2017\Enterprise\Common7\IDE\CommonExtensions\Microsoft\TeamFoundation\Team Explorer

或或 TeamExplorerProfessional 取代 Enterprise,視您安裝的版本而定。

在 32 位版本的 Windows 上,將 %programfiles(x86)% 取代%programfiles%。 您可以 安裝 Visual Studio Community (提供 Team Explorer 的存取權)或 Visual Studio Team Explorer 2017 免費。

提示

使用 witadmin,您可以 匯入和導出定義檔。 您可以使用的其他工具包括行程編輯器(需要您已安裝 Visual Studio 版本)。 從 Visual Studio Marketplace 安裝程式範本編輯器。

必要條件

針對定義工作項目類型的專案,您必須設定下列許可權:

  • 若要匯出或列出工作項目類型,您必須是 Project 管理員 istrators 群組的成員,或將 [檢視專案層級資訊] 權限設定為 [允許]。
  • 若要終結、匯入或重新命名工作項目類型,您必須是Team Foundation 管理員 istrators 安全組或 Project 管理員 istrators 安全組的成員

如需詳細資訊,請參閱 變更專案集合層級許可權

注意

即使您使用系統管理許可權登入,也必須開啟提升許可權的命令提示字元視窗,在執行 Windows Server 2008 的伺服器上執行此函式。 若要開啟提升許可權的 [命令提示字元] 視窗,請選擇 [開始],開啟命令提示字元的快捷方式功能表,然後選擇 [以 管理員 istrator 執行]。 如需詳細資訊,請參閱 Microsoft 網站:使用者 存取控制

語法

witadmin destroywitd /collection:CollectionURL /p:Project /n:TypeName [/noprompt]   
witadmin exportwitd /collection:CollectionURL /p:Project /n:TypeName [/f:FileName] [/e:Encoding] [/exportgloballists]  
witadmin importwitd /collection:CollectionURL [/p:Project] /f:FileName [/e:Encoding] [/v] 
witadmin listwitd /collection:CollectionURL /p:Project    
witadmin renamewitd /collection:CollectionURL /p:Project /n:TypeName /new:NewName [/noprompt]   

參數

參數 說明
/collection:CollectionURL 指定專案集合的 URI。 例如:

內部部署格式:http://ServerName:Port/VirtualDirectoryName/CollectionName
如果沒有使用虛擬目錄,請使用下列格式: http://ServerName:Port/CollectionName
/p:Project 要管理工作項目類型的專案。 此項目必須在 /collection 參數所指定的專案集合中定義。

除非您使用 /v 選項執行 importwitd 命令,否則需要 /p 參數。
/n:TypeName 要終結、匯出、匯入或重新命名的工作項目類型名稱。
/f:FileName XML 定義檔的路徑和檔名,其中包含要匯出或匯入的工作項目類型。 如果您在使用 exportwitd 命令時省略此參數,XML 會出現在 [命令提示字元] 視窗中。

注意: 如果您使用 Windows Vista,您可能沒有特定資料夾的許可權。 如果您嘗試將工作項目類型匯出至您沒有許可權的位置,登錄虛擬化技術會自動將導出的檔案重新導向並儲存至虛擬存放區。 若要避免此重新導向,您可以將檔案匯出至您具有許可權的位置。 如需詳細資訊,請參閱 Microsoft 網站上的登錄虛擬化 頁面。
/e:*Encoding .NET Framework 2.0 編碼格式的名稱。 命令會使用指定的編碼來匯出或匯入 XML 數據。 例如, /e:utf-7 指定 Unicode (UTF-7) 編碼。 如果您省略此參數,witadmin 會嘗試偵測編碼,如果偵測失敗,witadmin 會使用 UTF-8。
/exportgloballists 匯出工作項目類型所參考之全域清單的定義。 全域清單的定義會內嵌到工作項目類型定義 XML 中。 若未指定,則會省略全域清單的定義。
/v 驗證定義工作項目類型的 XML,但不會匯入 XML 定義檔。 注意: 您可以驗證類型定義,而不指定專案。 忽略專案範圍群組的參考。
/new:NewName 工作項目類型的新名稱。
/noprompt 停用確認的提示。
/?help 在 [命令提示字元] 視窗中顯示命令的說明。

備註

當您使用 destroywitd 命令時,它會終結下列所有物件:

  • 工作項目類型
  • 該類型的所有工作專案
  • 工作項目數據表、長文字數據表和鏈接數據表中的對應專案
  • 工作專案類型元數據快取中的物件

範例

除非另有指定,否則每個範例中都會套用下列值:

  • 專案集合的 URI: http://AdventureWorksServer:8080/tfs/DefaultCollection
  • 專案名稱: AdventureWorks
  • 輸入或輸出檔案名稱: myworkitems.xml
  • 工作項目類型名稱: myworkitem
  • 預設編碼: UTF-8

匯出 WIT 的定義

下列命令會將 myworkitem 的定義匯出至檔案,myworkitems.xml。

witadmin exportwitd /collection:http://AdventureWorksServer:8080/tfs/DefaultCollection /p:AdventureWorks /f:myworkitems.xml /n:myworkitem  

下列範例會使用 Unicode (UTF-7) 編碼來匯出工作專案。

witadmin exportwitd /collection:http://AdventureWorksServer:8080/tfs/DefaultCollection /p:AdventureWorks /f:myworkitems.xml /n:myworkitem /e:utf-7  

匯出 WIT 的定義及其參考的全域清單

下列範例會匯出工作項目類型及其參考的全域清單。

witadmin exportwitd /collection:http://AdventureWorksServer:8080/tfs/DefaultCollection /p:AdventureWorks /f:myworkitems.xml /n:myworkitem /exportgloballists  

列出 WIT 的定義

下列範例會顯示工作項目的定義,類型為 [命令提示字元] 視窗。

witadmin exportwitd /collection:http://AdventureWorksServer:8080/tfs/DefaultCollection /p:AdventureWorks /n:myworkitem  

匯入 WIT 的定義

下列範例會從 XML 檔案匯入工作項目定義。

witadmin importwitd /collection:http://AdventureWorksServer:8080/tfs/DefaultCollection /f:myworkitem.xml /p:AdventureWorks  

驗證 WIT 的 XML 定義

下列範例會驗證定義工作項目類型的 XML,但不會匯入定義。

witadmin importwitd /collection:http://AdventureWorksServer:8080/tfs/DefaultCollection /f:myworkitem.xml /p:AdventureWorks /v  

問與答

問:我可以進行哪些自定義專案,但仍使用 [設定功能精靈] 在升級后更新我的專案?

答: 您可以新增自定義 WIT 並變更表單配置。 [設定 功能精靈 ] 會更新您的專案,您將可存取最新的功能。

變更工作流程或重新命名 WIT 可能需要您在更新專案時執行一些手動作業。 若要瞭解您可以安全地進行哪些自定義,以及應該避免的自定義專案,請參閱 自定義工作追蹤體驗:在您自定義之前,請瞭解維護和升級含意

問:如何? 變更與 WIT 相關聯的色彩?

答: 在入口網站中,工作專案會出現在查詢結果中,以及敏捷式規劃工具的待辦專案和面板頁面上。 若要變更與現有 WIT 相關聯的色彩,或新增要用於新 WIT 的色彩, 請編輯進程設定

不同工作項目類型的色彩指派

問:如何? 停用或停用 WIT? 如何? 限制使用者建立特定類型的工作專案嗎?

答: 如果您有想要淘汰的工作項目類型,但維護根據該類型建立的工作專案,您可以新增規則來停用所有有效的使用者儲存工作項目類型。

    <TRANSITION from=" " to="New">  
       <FIELDS>  
         <FIELD refname="System.CreatedBy">  
              <VALIDUSER not="[Team Project Name]Project Valid Users" />  
         </FIELD>  
       </FIELDS>  
    </TRANSITION>     

如果您想要將特定 WIT 的建立限制為一組使用者,有兩種方式可以限制存取:

  • 將 WIT 新增至隱藏類別群組 ,以防止大部分參與者建立它們。 如果您想要允許一組使用者存取,您可以 建立範本 的超連結,以開啟工作項目窗體,並與您想要建立這些小組成員共用該連結。
  • 將欄位規則新增 至 System.CreatedBy 字段的工作流程 ,以有效限制使用者群組建立特定類型的工作專案。 如下列範例所示,建立工作專案的用戶必須屬於 Allowed Group ,才能儲存工作專案。
<TRANSITION from=" " to="New">  
   <FIELDS>  
     <FIELD refname="System.CreatedBy">  
         <VALIDUSER for="Allowed Group" not="Disallowed Group" />  
     </FIELD>  
   </FIELDS>  
</TRANSITION>  

問:如何? 刪除 WIT?

答: 若要防止小組成員使用特定的 WIT 來建立工作專案,您可以從專案中移除它。 當您使用 witadmin destroywitd時,會永久移除使用該 WIT 以及 WIT 本身建立的所有工作專案。 例如,如果您的小組未使用障礙,您可以從 Fabrikam 網站專案刪除標示為障礙的 WIT。

witadmin destroywitd /collection:"http://FabrikamPrime:8080/tfs/DefaultCollection" /p:"Fabrikam Web Site" /n:"Impediment"   

當您刪除屬於類別的 WIT 時,您必須更新專案的類別定義,以反映新名稱。 特別是,在更新類別定義之前, 敏捷式規劃工具 將無法運作。

如需詳細資訊,請參閱 匯入和導出類別