Managing Global Lists for Work Item Types [witadmin]
Updated: January 2011
By using global lists, you can minimize the work that is required to update a list that multiple types of work items share. Global lists are pick lists that you can include in one or more fields and types of work items. You can define global lists for a team project, a team project collection, a process template, or global workflow.
You can define a global list within its own definition file, in one for a type of work item, or in global workflow. When you use the global-list definition, you can manage the global lists that are defined for a collection by using the following commands in the witadmin command-line tool:
destroygloballist: Destroys a global list.
exportgloballist: Exports the global lists to an XML file, or to the Command Prompt window.
importgloballist: Imports global lists from an XML file. If you try to import a global list that already exists on the server, a warning asks if you want to overwrite the one on the server. If you try to import a global list that does not already exist, the command creates a new global list.
listgloballist: Displays the name of each global list defined on the server.
The witadmin command-line utility is located in Drive:\Program Files\Microsoft Visual Studio 10.0\Common7\IDE on the client computer that runs Team Explorer. For 64-bit machines, the tool is in Drive:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE.
For more information about global lists, see Defining Global Lists.
You can create and modify global lists 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 April 2010.
For the team project collection where the global lists are defined, you must have the following permissions set:
To export or list global lists, you must be a member of the Readers group or have your View work items in this node permission set to Allow
To destroy or import global lists, 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.
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, click Start, right-click Command Prompt, and click Run as Administrator. For more information, see this page on the Microsoft Web site: User Access Control.
witadmin destroygloballist /collection:CollectionURL /n:GlobalListName [/noprompt] [/force]
witadmin exportgloballist /collection:CollectionURL [/f:FileName] [/e:Encoding]
witadmin importgloballist /collection:CollectionURL /f:FileName [/e:Encoding]
witadmin listgloballist /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:
The name of the global list to destroy.
The path and the name of the global list XML definition file to export or import.
If the client computer runs Windows Vista, you may 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.
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, /e utf-7 specifies Unicode (UTF-7) encoding. If you omit this parameter, witadmin attempts to detect the encoding, and if detection fails, witadmin uses UTF-8.
Disables the prompt for confirmation.
/? or help
Displays help about the command in the Command Prompt window.
Importing a global list creates a list if one does not exist. If the list already exists, the witadmin importgloballist command will warn you that the current list will be overwritten. You can write your own program to update an existing global list, or you can update the global list yourself with the new data.
Unless otherwise specified, the following values apply in each example:
URI for the team project collection: http://AdventureWorksServer:8080/AWTeam/Collection1
Server Web site port number: 8080
Display the Names of Global Lists
The following example shows the global lists defined on the server. The example exports the global lists using the default UTF-8 encoding:
witadmin listgloballist /collection:http://AdventureWorksServer:8080/AWTeam/Collection1
Export the Definition of Global Lists
The following example exports the global lists:
witadmin exportgloballist /collection:http://AdventureWorksServer:8080/AWTeam/Collection1 /f:C:mygloballists.xml
The following example exports the same global lists to the same server, but uses Unicode (UTF-7) encoding:
witadmin exportgloballist /collection:http://AdventureWorksServer:8080/AWTeam/Collection1 /f:C:mygloballists.xml /e:utf-7
Import the Definition of Global Lists
The following example imports global lists:
witadmin importgloballist /collection:http://AdventureWorksServer:8080/AWTeam/Collection1 /f:C:mygloballists.xml
The following example imports the same global lists to the same server, but uses Unicode (UTF-7) encoding:
witadmin importgloballist /collection:http://AdventureWorksServer:8080/AWTeam/Collection1 /f:C:mygloballists.xml /e utf-7