Import and export global workflow
TFS 2018 | TFS 2017 | TFS 2015 | TFS 2013
With witadmin, you can modify XML definition files to support the On-premises XML process model. For an overview of process models and what is supported, see Customize your work tracking experience.
By using global workflow, you can minimize the work required to define and update work item fields and global lists that multiple team projects and types of work items share. With global workflow, you can define and update fields and global lists. You can manage the global workflow for a team project collection or a team project by using the following commands in the witadmin command-line tool:
- exportglobalworkflow: Exports the global workflow to an XML file or the Command Prompt window.
- importglobalworkflow: Imports global workflow from an XML file.
How to run the witadmin command-line tool
To run the witadmin command-line tool, open a Command Prompt window where Visual Studio is installed. The witadmin command-line tool installs with any version of Visual Studio. You can access this tool by installing the free version of Visual Studio Community or Visual Studio Team Explorer.
If you are connecting to TFS, you must use the same version of Visual Studio or Team Explorer as TFS. For example, if you connect to a TFS 2017 instance, you must connect from Visual Studio 2017 or Team Explorer 2017. There is no Team Explorer 2015 version.
Visual Studio 2017 or Team Explorer 2017 client:
%programfiles(x86)%\Microsoft Visual Studio\2017\Community\Common7\IDE\CommonExtensions\Microsoft\TeamFoundation\Team Explorer
Enterprise in place of
Community, depending on the version you've installed.
Visual Studio 2015 client:
cd %programfiles(x86)%\Microsoft Visual Studio 14.0\Common7\IDE
Visual Studio 2013 client:
cd %programfiles(x86)%\Microsoft Visual Studio 12.0\Common7\IDE
Team Explorer 2013 client:
cd %programfiles%\Microsoft Visual Studio 12.0\Common7\IDE\CommonExtensions\Microsoft\TeamFoundation\Team Explorer
On a 32-bit edition of Windows, replace %programfiles(x86)% with %programfiles%. You can install Visual Studio Community (which provides access to Team Explorer) or Visual Studio Team Explorer 2017 for free.
- To export a global workflow, you must be a valid user of the team project or team project collection.
- To import a global workflow to a team project, you must be a member of the following security groups: Team Foundation Administrators, Project Collection Administrators, or Project Administrators.
- To import a global workflow to a team project collection, you must be a member of either the Team Foundation Administrators or Project Collection Administrators.
Even if you log on with administrative permissions, you must open an elevated Command Prompt window to perform this function on a server that is running Windows Server 2008. To open an elevated Command Prompt window, choose Start, open the Command Prompt shortcut menu, and then choose Run as Administrator. For more information, see the following page on the Microsoft website: User Access Control.
witadmin exportglobalworkflow /collection:CollectionURL [/p:ProjectName] [/f:FileName] [/e:Encoding] [/exportgloballists] witadmin importglobalworkflow /collection:CollectionURL [/p:ProjectName] /f:FileName [/e:Encoding] [/v]
||Specifies the URI of the collection. You must specify the URI in the following format: http://ServerName:Port/VirtualDirectoryName/CollectionName
If you do not specify a virtual directory, you must specify the URI in the following format:
||Optional. The team project for which you want to export or import the global workflow. This team project must be defined in the collection that you specified by using the /collection parameter. If you do not specify a team project, the global workflow is imported or exported for the collection.|
||The path and the name of the XML definition file for global workflow to export or import.
Note: If the client computer is running Windows Vista, you might not have permissions to certain folders. If you try to export the global list to a location where you do not have permissions, the registry virtualization technology automatically redirects the exported file and saves it to the virtual store. For more information, see the following pages on the Microsoft web site: Registry Virtualization and Common file and registry virtualization issues in Windows Vista. To avoid this redirection, you can export the file to a location where you have permissions.
||Optional. The name of a .NET Framework 2.0 encoding format. The specified encoding will be used to export or import the XML data. For example,
|/v||Optional. Validates the XML that defines the global workflow but does not import the definition file.|
|/exportgloballists||Optional. Exports the definitions of global lists that the global workflow references. The definitions for global lists will be embedded into the XML definition of the global workflow. If you do not specify this parameter, the definitions for global lists are omitted.|
|/? or help||Displays help about the command in the Command Prompt window.|
You can define work item fields by importing them through a global workflow. However, you cannot change the properties of existing fields by using global workflow. If you import a global workflow that does not contain a FIELDS element, all previously imported rules for global workflow will be deleted. Field definitions will not be affected.
Unless otherwise specified, the following values apply in each example:
- URI for the collection: http://AdventureWorksServer:8080/tfs/DefaultCollection
- Team project: Contoso
- Port number for the server website: 8080
Export the definition of a global workflow for a team project
The following example exports the global workflow for a team project:
witadmin exportglobalworkflow /collection:http://AdventureWorksServer:8080/tfs/DefaultCollection /p:Contoso /f:C:myGlobalWorkflow.xml
Import the definition of a global workflow to a team project
The following example imports the global workflow to the Contoso team project:
witadmin importglobalworkflow /collection:http://AdventureWorksServer:8080/tfs/DefaultCollection /p:Contoso /f:C:collectionGlobalWorkflow.xml
Import the definition of a global workflow to a collection
The following example imports the global workflow to the collection:
witadmin importglobalworkflow /collection:http://AdventureWorksServer:8080/tfs/DefaultCollection /f:C:collectionGlobalWorkflow.xml