Customizing and Managing Work Item Types

You can manage work item types for a team project by using the following witadmin commands:

  • destroywitd:  Destroys a work item type, and destroys every work item of that type permanently without recovery.

  • exportwitd:  Exports the definition of a work item type to an XML file, or to the Command Prompt window.

  • importwitd:  Imports work item types from an XML definition file into a team project on a server that runs Team Foundation Server. If a work item type with the same name already exists, the new work item type definition overwrites the existing one. If the work item type does not already exist, this command creates a new work item type. To validate the XML that defines a work item type, but not import the file, you use the /v option.

  • listwitd:  Displays the names of the work item types in the specified project in the Command Prompt window.

  • renamewitd:  Changes the display name of a work item type within a specific project. After you run this command, work items of this type show the new name.

To run the witadmin command-line tool, open a Command Prompt window where either Visual Studio or Team Explorer is installed and enter:

cd %programfiles%\Microsoft Visual Studio 11.0\Common7\IDE

On a 64-bit edition of Windows, replace %programfiles% with %programfiles(x86)%.

For more information about work item types, see Add Type Definitions for Work Items to a Process Template.

Note

You can create and modify work item types by using Process Editor, a power tool for Visual Studio. This tool is not supported. For more information, see the following page on the Microsoft Web site: Team Foundation Server Power Tools.

Requirements

For the team project where the work item types are defined, you must have the following permissions set:

  • To export or list work item types, you must be a member of the Project Administrators group or have your View project-level information permission set to Allow.

  • To destroy, import, or rename work item types, you must be a member of the Team Foundation Administrators security group or the Project Administrators security group.

For more information, see Team Foundation Server Permissions and Team Foundation Server Default Groups, Permissions, and Roles.

Note

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 shortcut menu for the Command Prompt, and then choose Run as Administrator. For more information, see the Microsoft Web site: User Access Control.

witadmin destroywitd /collection:CollectionURL /p:Project /n:TypeName [/noprompt]

witadmin exportwitd /collection:CollectionURL /p:Project /n:TypeName [/f:FileName] [/e:Encoding] [/exportglobalists]

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]

Parameters

Parameter

Description

/collection:CollectionURL

Specifies the URI of the team project collection. The format for the URI is the following: http://ServerName:Port/VirtualDirectoryName/CollectionName

If no virtual directory is used, then the format for the URI is the following:

http://ServerName:Port/CollectionName

/p:Project

The team project for which the types of work items are to be managed. This team project must be defined in the project collection specified by the /collection parameter.

The /p parameter is required unless you run the importwitd command with the /v option.

/n:TypeName

The name of the work item type to destroy, export, import, or rename.

/f:FileName

The path and file name of the XML definition file that contains the types of work items to be exported or imported. If you omit this parameter when you use the exportwitd command, the XML appears in the Command Prompt window.

Note

If you are using Windows Vista you might not have permissions to certain folders. If you try to export the work item type 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. To avoid this redirection, you can export the file to a location where you have permissions. For more information about registry virtualization, see the Microsoft Web site: Registry Virtualization and Common file and registry virtualization issues in Windows Vista.

/e:Encoding

The name of a .NET Framework 2.0 encoding format. The command uses the specified encoding to export or import the XML data. For example, /e:utf-7 specifies Unicode (UTF-7) encoding. If you omit this parameter, witadmin tries to detect the encoding, and if detection fails, witadmin uses UTF-8.

/exportgloballists

Exports the definitions of global lists referenced by the work item type. The definitions for global lists will be embedded into the work item type definition XML. When not specified, the definitions for global lists are omitted.

/v

Validates the XML that defines the work item type, but does not import the XML definition file.

Note

You can validate the type definition without specifying a team project. References to project-scoped groups is ignored.

/new:NewName

The new name of the work item type.

/noprompt

Disables the prompt for confirmation.

/? or help

Displays help about the command in the Command Prompt window.

Remarks

When you use the destroywitd command, it destroys all the following objects:

  • The work item type

  • All work items of that type

  • Corresponding entries in the work item tables, the long text tables, and the link tables

  • Objects in the work item type metadata cache

Examples

Unless otherwise specified, the following values apply in each example:

  • URI for the team project collection: http://AdventureWorksServer:8080/tfs/DefaultCollection

  • Project name: AdventureWorks

  • Input or output file name: myworkitems.xml

  • Work item type name: myworkitem

  • Default encoding: UTF-8

Export the Definition of a Work Item Type

The following command exports the definition for myworkitem to the file, myworkitems.xml.

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

The following example exports the work item by using Unicode (UTF-7) encoding.

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

Export the Definition of a Work Item Type and Its Referenced Global Lists

The following example exports the work item type and its referenced global lists.

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

List the Definition of a Work Item Type

The following example displays the definition of the work item type the Command Prompt window.

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

Import the Definition of Work Item Types

The following example imports the work item definition from the XML file.

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

Validate the XML Definition of Work Item Types

The following example validates the XML that defines the work item type but does not import the definition.

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

See Also

Tasks

Create a Work Item Type

Concepts

Customize Project Tracking Data, Forms, Workflow, and Other Objects

Other Resources

witAdmin: Administering Objects for Tracking Work Items