작업 항목 필드 관리
Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019
Important
온-프레미스 XML 프로세스 모델의 경우 witadmin을 사용하여 프로젝트에 대한 프로세스를 나열, 가져오기, 내보내기 및 수정할 수 있습니다. 상속 및 호스트된 XML 프로세스 모델의 경우 witadmin을 사용하여 프로세스 정보를 나열하고 내보낼 수 있습니다. 프로세스 모델 및 지원되는 항목에 대한 개요는 작업 추적 환경 사용자 지정을 참조하세요.
다음 witadmin 명령을 사용하여 프로젝트 컬렉션(온-프레미스 XML)에 대해 정의된 작업 항목 형식에 대해 정의된 필드를 관리할 수 있습니다. 전역 필드(온-프레미스 XML에 유효)를 추가하려면 전역 워크플로 파일을 수정하고 컬렉션으로 가져와서 추가할 수 있습니다.
changefield
: 필드의 특성을 하나 이상 변경합니다. 다음 특성 중 하나를 변경하면 프로젝트 컬렉션 내의 모든 작업 항목 유형 및 프로젝트에 대해 변경합니다.필드 또는
HTML
필드의 데이터 형식입니다PlainText
.Important
Team Foundation Server를 이전 버전에서 현재 버전으로 업그레이드하면 설명(System.Description) 필드에 대한 형식 할당이 자동으로 변환됩니다
PlainText
HTML
. 명령을 사용하면changefield
이 필드의 내용을 복원하여 일반 텍스트를 표시할 수 있습니다.작업 항목 쿼리에 표시되는 이름 입니다. 이 이름은 작업 항목 양식에 표시되는 이름과 다를 수 있습니다.
보고서에 표시되는 필드의 이름, 참조 보고서 이름 및 보고 형식을 포함하는 보고 특성 입니다.
Active Directory와의 동기화 - 사용자 이름 필드의 동기화를 사용하거나 사용하지 않도록 설정할 수 있습니다.
deletefield
: 지정된 필드를 삭제합니다.listfields
: 모든 필드 또는 지정된 필드의 특성을 나열합니다.
참고 항목
이 witadmin indexfield
명령은 Azure DevOps Server 2019 이상 버전에서 더 이상 사용되지 않습니다. 인덱싱 필드는 더 이상 필요하지 않습니다.
witadmin
명령줄 도구 실행
명령줄 도구를 실행 witadmin
하려면 Visual Studio가 설치된 명령 프롬프트 창을 엽니다. 명령줄 도구는 witadmin
모든 버전의 Visual Studio와 함께 설치됩니다. Visual Studio Community 또는 Visual Studio 팀 탐색기의 무료 버전을 설치하여 이 도구에 액세스할 수 있습니다.
참고 항목
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
또는 Professional
Enterprise
Community
설치한 버전에 따라 대신
Visual Studio 2019의 경우
%programfiles(x86)%\Microsoft Visual Studio\2019\Community\Common7\IDE\CommonExtensions\Microsoft\TeamFoundation\Team Explorer
또는 Professional
Enterprise
Community
설치한 버전에 따라 대신
Visual Studio 2017의 경우
%programfiles(x86)%\Microsoft Visual Studio\2017\Enterprise\Common7\IDE\CommonExtensions\Microsoft\TeamFoundation\Team Explorer
또는 TeamExplorer
Professional
Enterprise
설치한 버전에 따라 대신
32비트 버전의 Windows에서 %programfiles(x86)%를 %programfiles%로 대체합니다. Visual Studio Community(팀 탐색기에 대한 액세스 제공) 또는 Visual Studio Team Explorer 2017을 무료로 설치할 수 있습니다.
기본 프로세스 템플릿 내에 정의된 필드의 개요는 작업 항목 필드 인덱스입니다.
팁
witadmin을 사용하면 정의 파일을 가져오고 내보낼 수 있습니다. 사용할 수 있는 다른 도구에는 프로세스 편집기(Visual Studio 버전을 설치해야 합니다)가 포함됩니다. Visual Studio Marketplace에서 프로세스 템플릿 편집기를 설치합니다.
필수 조건
- 필드를 나열하려면 컬렉션에서 프로젝트에 대한 프로젝트 수준 정보 보기 권한이 허용으로 설정되어 있어야 합니다.
- 필드의 이름을 삭제하거나 이름을 바꾸거나 필드의 특성을 변경하려면 Team Foundation Administrators 보안 그룹 또는 프로젝트 컬렉션 관리자 보안 그룹의 구성원이어야 합니다.
자세한 내용은 프로젝트 컬렉션 수준 권한 변경을 참조 하세요.
참고 항목
관리자 권한으로 로그인하는 경우에도 관리자 권한 명령 프롬프트 창을 열어 Windows Server 2008을 실행하는 서버에서 이 함수를 수행해야 합니다. 관리자 권한 명령 프롬프트 창을 열려면 시작을 선택하고 명령 프롬프트 바로 가기 메뉴를 연 다음 관리자 권한으로 실행을 선택합니다. 자세한 내용은 Microsoft 웹 사이트: 사용자 액세스 제어를 참조하세요.
구문
witadmin changefield /collection:CollectionURL /n:RefName [/name:NewName] [/syncnamechanges:true | false] [/reportingname:ReportingName] [/reportingrefname:ReportingRefName] [/reportingtype:Type] [/reportingformula:Formula] [/type:PlainText | HTML] [/noprompt]
witadmin deletefield /collection:CollectionURL /n:RefName [/noprompt]
witadmin listfields /collection:CollectionURL /n:RefName [/unused]
매개 변수
매개 변수 | 설명 |
---|---|
/collection :CollectionURL |
프로젝트 컬렉션의 URI를 지정합니다. 예시: 온-프레미스 형식: http://ServerName:Port/VirtualDirectoryName/CollectionName 가상 디렉터리가 사용되지 않는 경우 다음 형식 http://ServerName:Port/CollectionName 을 사용합니다. |
/n:RefName /n:Name |
작업 항목 형식 필드의 참조 이름입니다. |
/index |
지정된 필드에 대해 인덱싱을 사용하거나 사용하지 않도록 지정합니다. 인덱싱을 사용하도록 설정하고 해제하여 인덱싱을 사용하지 않도록 설정하도록 지정합니다. |
/name:NewName |
필드의 새 이름을 지정합니다. |
/syncnamechanges |
작업 항목 필드를 사용하여 이름을 저장하고 Active Directory 또는 작업 그룹에서 변경 내용이 변경되면 업데이트하도록 지정합니다. 이 옵션은 문자열의 데이터 형식을 가진 필드가 에 대해 typename 지정된 경우에만 유효합니다.데이터 필드에 대한 동기화를 사용하도록 지정 true 하고 데이터 필드에 대한 동기화를 사용하지 않도록 지정 false 합니다. |
/reportingname:ReportingName |
보고에 사용할 데이터 웨어하우스의 필드 이름을 지정합니다. |
/reportingrefname:ReportingRefName |
보고에 사용할 데이터 웨어하우스 필드의 참조 이름을 지정합니다. |
/reportingtype:Type |
보고에 대해 웨어하우스에서 필드를 사용하는 방법을 지정합니다. 유효한 값은 다음과 같습니다. - dimension: 정수, 문자열 또는 DateTime 필드에 사용됩니다.- detail: 정수, Double, String 또는 DateTime 필드에 사용됩니다.- measure: 정수 및 이중 필드에 사용됩니다. 기본 집계 유형은 합계입니다. 수식 매개 변수를 사용하여 다른 집계 형식을 지정할 수 있습니다.- none: 필드에서 보고서 기능을 사용하지 않도록 설정하는 데 사용됩니다.자세한 내용은 작업 항목 필드 및 특성 정보를 참조 하세요. |
/reportingformula:Formula |
필드가 로 보고 measure 될 때 사용할 집계 수식을 지정합니다. 유일하게 지원되는 수식은 .입니다 sum . |
/type:HTML | PlainText |
필드의 내용을 으로 또는 그로 PlainText HTML HTML 변환하도록 PlainText 지정합니다. 형식 할당 PlainText 이 있는 HTML 필드에 대해서만 이 옵션을 지정할 수 있습니다. FIELD(정의) 요소 참조를 참조하세요. |
/unused |
프로젝트 컬렉션에 정의된 프로젝트에서 사용되지 않는 모든 필드를 나열합니다. |
/noprompt |
확인 프롬프트를 사용하지 않도록 설정합니다. |
/? 또는 help |
명령 프롬프트 창에 명령에 대한 도움말을 표시합니다. |
Active Directory와 사용자 이름 동기화
Active Directory를 참조하는 사람 이름을 할당하는 데 사용되는 사용자 지정 작업 항목 필드의 동기화를 수동으로 사용하도록 설정해야 합니다. 사용자 지정 필드를 포함하는 각 프로젝트 컬렉션에 대해 각 필드에 대해 동기화를 사용하도록 설정해야 합니다.
사람 이름을 표시하는 모든 시스템 참조 필드에는 특성 syncnamechanges
이 .로 설정됩니다 true
. 이러한 필드에는 System.AuthorizedAs, System.AssignedTo, System.ChangedBy 및 System.CreatedBy가 포함됩니다. 기본 프로세스 템플릿 중 하나에 정의된 각 사용자 이름 필드에 대해 동기화가 사용하도록 설정됩니다. 자세한 내용은 할당 및 워크플로 필드를 참조 하세요.
동기화를 사용하도록 설정하면 필드에 더 이상 정적 문자열이 표시되지 않습니다. 대신 필드에는 사용자 계정과 연결된 이름이 표시됩니다. Active Directory 또는 작업 그룹에서 사용자 이름을 변경하면 새 이름이 자동으로 표시되도록 true
설정된 필드 syncnamechanges
가 표시됩니다.
문자열 필드에 특성을 할당 syncnamechanges
할 때 필드는 항상 유효한 사용자 이름을 허용합니다. 그러나 다음 조건 true
중 하나가 있는 경우 필드는 Team Foundation Server 또는 Active Directory에 저장된 그룹 이름을 허용하지 않습니다.
규칙은
VALIDUSER
모든 작업 항목 유형에 대해 지정됩니다.작업
VALIDUSER
항목 유형에 대한 규칙이 지정됩니다.규칙은
ALLOWEDVALUES
작업 항목 유형에 대해 지정되며 해당 규칙에는 그룹을 제외하는 필터 조건이 있습니다.자세한 내용은 모든 FIELD 요소를 참조 하세요.
각 작업 항목 유형에 대해 변경할 수 있는 특성
필드가 표시되는 작업 항목 형식 정의를 변경하여 필드에 대해 정의된 다음 특성 또는 값을 변경합니다.
- 작업 항목 양식에 표시되는 이름 입니다. WebLayout 및 Control 요소 또는 Control XML 요소 참조를 참조하세요.
- 도움말 텍스트입니다. 규칙 및 규칙 평가를 참조하세요.
- 선택 목록 또는 드롭다운 메뉴 내에서 허용되는 값 또는 항목입니다. ALLOWEDVALUES, SUGGESTEDVALUES 및 PROHIBITEDVALUES XML 요소를 참조 하세요.
예제
달리 지정하지 않는 한 각 예제에 다음 값이 적용됩니다.
- 프로젝트 컬렉션에 대한 URI: http://AdventureWorksServer:8080/tfs/DefaultCollection
- 작업 항목 필드 이름: AdventureWorks.Field
- 기본 인코딩: UTF-8
필드 나열
사용 중인 필드 집합을 확인하여 작업 항목 유형에 추가할 필드를 선택하는 데 사용합니다 witadmin listfields
. 또한 특정 필드에 대해 정의된 특성 할당을 나열하고 어떤 프로젝트에서 사용되는 필드를 결정할 수 있습니다.
작업 항목 필드의 특성 보기
다음 명령을 입력하여 지정된 필드에 대해 정의된 특성(예:
Microsoft.VSTS.Common.Issue
.)을 나열합니다.witadmin listfields /collection:http://AdventureWorksServer:8080/tfs/DefaultCollection /n:Microsoft.VSTS.Common.Issue
이 예제와 같이 명명된 필드에 대한 필드 및 특성 정보가 나타납니다.
Field: Microsoft.VSTS.Common.Issue Name: Issue Type: String Reportable As: dimension Use: Adventure Works (Shared Steps), AW Future (Shared Steps), AW Current (Shared Steps) Indexed: False
Use 매개 변수는 각 프로젝트의 이름과 필드가 사용되는 작업 항목 형식을 나타냅니다. 필드 특성 에 대한 자세한 내용은 작업 항목 필드의 인덱스입니다.
프로젝트 컬렉션의 모든 필드 나열
프로젝트 컬렉션에 대해 정의된 모든 필드를 나열하려면 다음 명령을 입력합니다.
witadmin listfields /collection:http://AdventureWorksServer:8080/tfs/DefaultCollection
명명된 프로젝트 컬렉션의 모든 필드에 대한 필드 정보가 나타납니다. 작업 항목 필드의 인덱스 참조
사용되지 않는 필드 나열
다음 명령을 입력하여 더 이상 프로젝트 컬렉션에서 작업 항목 형식으로 사용되지 않는 필드를 나열합니다.
witadmin listfields /collection:http://AdventureWorksServer:8080/tfs/DefaultCollection /unused
이 예제와 같이 사용되지 않는 각 필드에 대한 필드 및 특성 정보가 나타납니다.
Field: Microsoft.VSTS.CMMI.TaskType Name: Task Type Type: String Reportable As: dimension Use: Not In Use Indexed: False Field: Microsoft.VSTSUE.Common.Flag Name: Flag Type: String Reportable As: dimension Use: Not In Use Indexed: False Field: Microsoft.VSTSUE.Common.Progress Name: Progress Type: String Reportable As: dimension Use: Not In Use Indexed: False
필드 이름 바꾸기
팀에서 사용하는 명명 규칙을 충족하도록 작업 항목 필드의 이름을 변경할 수 있습니다. 새 이름은 프로젝트 컬렉션의 모든 프로젝트에서 변경된 필드를 참조하는 모든 작업 항목 형식에 적용됩니다. 작업 항목 쿼리에서 필터 조건을 정의할 때 친숙한 이름이 표시됩니다. 작업 항목 양식에 표시되는 이름은 필드에 정의된 이름과 다를 수 있습니다.
작업 항목 필드의 이름을 바꾸려면
다음 명령을 입력하여 중요 순위에
Microsoft.VSTS.Common.Rank
할당된 이름 이름을 바꿉니다.witadmin changefield /collection:http://AdventureWorksServer:8080/tfs/DefaultCollection /n:Microsoft.VSTS.Common.Rank /name:"Important Rank"
확인 프롬프트에서 y를 입력한 다음 Enter 키를 누릅니다. 다음 메시지가 표시될 때까지 기다립니다.
필드 이름이 바뀌었습니다.
단일 프로젝트로 가져온 변경 내용을 확인하려면
팀 탐색기에서 새로 고침을 선택합니다.
최신 업데이트는 서버에서 다운로드되며, 여기에는 필드 이름에 대한 변경 내용이 포함됩니다. 새로 고침이 완료되기까지 몇 초 정도 기다립니다.
새 쿼리를 선택하여 쿼리를 만듭니다.
쿼리 편집기 행을 추가할 절 링크를 추가하려면 여기 클릭을 선택하고 빈 필드 셀을 선택한 다음 셀에 Rank를 입력합니다. 결과 목록 위에 표시되는 다음 메시지입니다. 이 메시지는 순위를 찾을 수 없음을 나타냅니다.
쿼리를 실행하여 쿼리 결과를 확인합니다. TF51005: 쿼리는 존재하지 않는 필드를 참조합니다. 이 오류는 순위에 의해 <<발생합니다>>.
필드 셀에서 Rank 값을 삭제하고 셀에 중요 순위를 입력합니다.
연산자 셀에서 선택하고 <> 값 셀에 1을 입력합니다.
쿼리 도구 모음에서 실행을 선택합니다.
결과의 모든 행에 대한 바로 가기 메뉴를 열고 열 옵션을 선택합니다. 사용 가능한 열 목록에서 아래로 스크롤합니다 . 순위 필드는 더 이상 없지만 중요 순위 필드가 있습니다.
사용 가능한 열 상자에서 중요 순위를 선택한 다음 단추를 선택합니다>(선택한 열 추가). 확인을 선택합니다.
Microsoft.VSTS.Common.Rank의 이름 이름이 쿼리 작성기 및 결과 목록 전체에서 순위에서 중요 순위로 변경되었습니다.
쿼리를 닫습니다. 쿼리를 저장하라는 메시지가 표시되면 아니요를 선택합니다.
새 작업 작업 항목을 만듭니다. 새 작업 항목 링크를 선택한 다음 작업을 선택합니다.
이 작업 항목은 변경하고 가져온 작업 항목 유형에서 만들어집니다.
상태 상자에서 이름이 바뀐 필드인 순위에 대한 레이블이 변경되지 않았습니다. 작업 항목 양식의 필드 레이블이 부모 프로젝트로 범위가 지정되고 방금 지정한 서버 전체 필드 이름과 독립적이기 때문입니다.
새 작업을 닫고 작업 항목을 저장하라는 메시지가 표시되면 아니요를 선택합니다.
필드를 값으로 보고서 변경
다음 명령은 DateTime 필드 AdventureWorks.CreatedOn의 형식을 차원에 보고하는 기능을 지정합니다. 이 필드의 데이터는 보고서를 필터링하는 데 사용할 수 있도록 웨어하우스 및 Analysis Services 데이터베이스에 들어갑니다.
witadmin changefield /collection:http://AdventureWorksServer:8080/tfs/DefaultCollection /n:AdventureWorks.CreatedOn /reportingtype:dimension
다음 명령은 측정할 Double 필드 AdventureWorks.Field의 형식을 보고하는 기능을 지정합니다. 모든 측정값은 합계로 집계됩니다.
witadmin reportfield /collection:http://AdventureWorksServer:8080/tfs/DefaultCollection /n:AdventureWorks.Field /reportingtype:measure
사용자 지정 사용자 이름 필드의 동기화 사용
다음 명령은 작업 항목 필드 AW에 대한 동기화를 사용하도록 설정합니다. AdventureWorksServer의 Collection1에 대해 정의된 CustomerName입니다.
변환할 필드의 데이터 형식 확인
다음 명령을 입력하여 동기화하려는 MyCompany.CustomerName과 같은 필드에 할당된 데이터 형식을 확인합니다.
witadmin listfields /collection:http://AdventureWorksServer:8080/tfs/DefaultCollection /n:MyCompany.CustomerName
동기화 사용
사용자 이름 필드에 대한 동기화를 사용하도록 설정하려면 다음 명령을 입력하고 여기에 표시된 인수에 대한 데이터를 대체합니다.
witadmin changefield /collection:http://AdventureWorksServer:8080/tfs/DefaultCollection /n:MyCompany.CustomerName /syncnamechanges:true
다음 확인 프롬프트가 나타납니다.
그러면 Team Foundation Server의 필드 {0} 속성이 변경됩니다. 계속할까요?
필드를 변경하려는지 확인하려면 0을 입력하고, 1을 입력하여 요청을 취소합니다.
변경 요청이 성공하면 다음 확인 메시지가 나타납니다.
필드가 업데이트되었습니다.
변경 요청이 실패하면 오류 메시지가 나타납니다. 가장 일반적인 실수는 시스템 참조 필드를 변경하거나 String 이외의 데이터 형식의 필드를 변경하려고 하는 것입니다. 이러한 작업은 지원되지 않습니다.
필드 삭제
필드를 삭제하기 전에 필드가 사용되고 있지 않은지 확인합니다. 필드를 사용 중인 경우 먼저 프로젝트 컬렉션에서 필드를 삭제하기 전에 해당 필드를 사용하는 작업 항목 형식에서 제거해야 합니다. 다음 명령은 Collection1에서 필드를 AdventureWorks.Field
삭제합니다.
witadmin deletefield /collection:http://AdventureWorksServer:8080/tfs/DefaultCollection /n:AdventureWorks.Field
필드가 사용되지 않는지 확인
작업 항목 필드의 참조 이름(예:
MyCompany.MyProcess.MyField
.)을 지정하여 다음 명령을 입력합니다.witadmin listfields /collection:http://AdventureWorksServer:8080/tfs/DefaultCollection /n:MyCompany.MyProcess.MyField
필드에 표시되는 정보에서 이 예제와 같이 사용 값이 "사용되지 않음"인지 확인합니다.
Field: MyCompany.MyProcess.MyField Name: MyField Type: String Reportable As: dimension Use: Not In Use Indexed: False
사용 필드에 필드가 사용 중임을 나타내는 경우 나열된 각 프로젝트의 각 작업 항목 유형에서 해당 필드를 삭제해야 합니다. 예를 들어 필드는 Arroyo, Desert,
Microsoft.VSTS.TCM.SystemInfo
Palm 및 Springs의 네 가지 프로젝트에 대해 버그 및 코드 결함 작업 항목 유형에서 사용 중임을 나타냅니다.Field: Microsoft.VSTS.TCM.SystemInfo Name: System Info Type: Html Reportable As: None Use: Arroyo (Bug), Desert (Bug), Palm (Bug), Springs (Bug, Code Defect) Indexed: False
이 필드를 삭제하려면 먼저 정의된 각 프로젝트에 대해 나열된 각 작업 항목 유형에서 제거해야 합니다. 필드를 제거하려면 필드 참조 이름을 포함하는 요소와
Control
항목을 삭제하여 작업 항목 형식에FIELD
대한 정의를 수정합니다. 가져오기, 내보내기 및 작업 항목 형식, FIELD(정의) 요소 참조 및 Control을 참조하세요.
프로젝트 컬렉션에서 필드 삭제
다음 명령을 입력하여 필드를 삭제한 MyCompany.MyProcess.MyField
다음 Enter 키를 선택합니다.
witadmin deletefield /collection:http://AdventureWorksServer:8080/tfs/DefaultCollection /n:RefName
확인 프롬프트에 y를 입력하여 이 단계를 완료합니다.