TFSConfig를 사용하여 Azure DevOps 온-프레미스 관리

Azure DevOps Server 2022 | Azure DevOps Server 2020 | Azure DevOps Server 2019

TFSConfig 명령줄 도구를 사용하여 Azure DevOps 온-프레미스 배포에 대한 다양한 관리 작업을 수행할 수 있습니다.

TFSConfig는 Azure DevOps Server 설치된 모든 컴퓨터에서 실행할 수 있습니다.

명령줄 도구 위치

Azure DevOps 명령줄 도구는 Azure DevOps 애플리케이션 계층 서버의 /Tools 디렉터리에 설치됩니다.

  • Azure DevOps Server 2020:%programfiles%\Azure DevOps Server 2020\Tools
  • Azure DevOps Server 2019:%programfiles%\Azure DevOps Server 2019\Tools
  • TFS 2018: %programfiles%\Microsoft Team Foundation Server 2018\Tools
  • TFS 2017: %programfiles%\Microsoft Team Foundation Server 15.0\Tools
  • TFS 2015: %programfiles%\Microsoft Team Foundation Server 14.0\Tools
  • TFS 2013: %programfiles%\Microsoft Team Foundation Server 12.0\Tools
  • TFS 2012: %programfiles%\Microsoft Team Foundation Server 11.0\Tools
  • TFS 2010: %programfiles%\Microsoft Team Foundation Server 2010\Tools

사전 요구 사항

많은 명령이 올바르게 작동하려면 TFSConfig가 TFS 배포의 일부인 다양한 서버 및 서비스에 연결할 수 있어야 하며, TFSConfig 를 실행하는 사용자에게는 이러한 동일한 서버 및 서비스에 대한 관리 권한이 있어야 합니다. 특정 명령에 대한 요구 사항은 아래에서 설명합니다.

실행 중인 사용자에게 관리 자격 증명이 있더라도 관리자 권한 명령 프롬프트에서 많은 TFSConfig 명령을 실행해야 합니다. 관리자 권한 명령 프롬프트를 열려면 시작을 클릭하고 명령 프롬프트를 마우스 오른쪽 단추로 클릭한 다음 관리자 권한으로 실행을 클릭합니다. 자세한 내용은 사용자 계정 컨트롤을 참조하세요.

Azure DevOps Server 관리 콘솔을 사용하여 대화형으로 관리 작업을 수행할 수도 있습니다. 관리 작업 빠른 참조를 참조하세요.

명령 나열 및 도움말 보기

TFSConfig 명령의 전체 목록을 표시하려면 도움말 명령을 사용합니다.

TFSConfig help

개별 명령에 대한 도움말을 보려면 도움말 명령을 사용하고 도움말 을 원하는 명령의 이름을 지정합니다. 예를 들어 계정 명령에 대한 도움말을 보려면 다음을 수행합니다.

TFSConfig help accounts

계정

accounts 명령을 사용하여 이러한 Azure DevOps Server 서비스 계정을 관리합니다.

  • Azure DevOps Server 서비스 계정
  • SQL Server Reporting Services 대한 데이터 원본 계정
  • Azure DevOps 프록시 서버 서비스 계정

이 명령을 사용하여 Azure DevOps Server 데이터베이스의 소유권을 변경할 수도 있습니다.

TfsConfig accounts /change|add|set|delete|updatepassword|resetowner
	[/accountType:<adminConsole|applicationTier|proxy|reportingDataSource>]
	[/account:<accountName>] [/password:<password>]
	[/sqlInstance:<serverName>] [/databaseName:<databaseName>] [/continue]
작업(Operation) Description
UpdatePassword 서비스 계정으로 사용되는 계정의 암호를 변경합니다. 지정된 계정으로 실행되는 기존 계정 및 모든 accountTypes를 변경합니다.
변경 서비스 계정으로 사용되는 계정을 변경합니다. 필요한 리소스 및 그룹에 새 계정을 추가하고, 필요한 권한을 부여한 다음, 사용할 서비스를 설정합니다. 이렇게 하면 리소스에서 이전 계정이 제거되지 않습니다.

accountType 옵션을 사용하지 않으면 애플리케이션 계층에 대한 서비스 계정이 변경됩니다.
추가 필요한 리소스에 새 계정만 추가합니다. NLB 시나리오에 유용합니다. 일부 컬렉션에 연결할 수 없는 경우 continue 플래그를 사용합니다. 추가는 나중에 다시 실행하여 누락된 컬렉션을 업데이트할 수 있습니다. 계정을 서비스 계정으로 사용하는 데 필요한 그룹에 계정을 추가합니다.
Set 리소스에 이미 추가된 계정을 사용하도록 서비스만 설정합니다. NLB 시나리오에 유용합니다.
삭제 모든 리소스에서 계정을 제거합니다. 계정을 삭제할 때는 다른 서버에서 서비스가 거부될 수 있으므로 주의해야 합니다.
ResetOwner 데이터베이스가 이동, 복제 또는 재해 복구의 일부로 복원되는 경우 데이터베이스 소유자는 서버를 복원하는 관리자로 전환할 수 있습니다. 이 옵션은 모든 데이터베이스를 반복하고 dbo 로그인을 현재 소유자로 설정합니다.
AccountType Description
AdminConsole 관리 콘솔 사용자는 다양한 리소스에서 콘솔을 사용할 수 있는 최소 권한을 부여받은 사용자입니다.
ApplicationTier 핵심 웹 서비스에 대한 appPool의 서비스 계정을 변경합니다. (TFSService)
Proxy (프록시) 프록시 웹 서비스에 대한 appPool의 서비스 계정을 변경합니다. (TFSProxy)
ReportingDataSource 보고서에서 보고 데이터에 액세스하는 데 사용하는 계정을 변경합니다. (TFSReports)

기본값은 ApplicationTier입니다.

sqlInstance 및 databaseName은 애플리케이션 계층이 구성되기 전에 데이터베이스에 계정을 추가할 때만 사용할 수 있습니다. 이는 AT 전용 구성 마법사를 실행하기 전에 다른 계정이 필요한 재해 복구 시나리오에서 주로 유용합니다.

계속 옵션은 계정을 추가하거나 변경할 때 사용됩니다. 이러한 작업의 경우 각 컬렉션 데이터베이스에서 계정이 변경됩니다. continue가 제공되면 컬렉션에 연결할 수 없는 경우 계속 진행됩니다. 연결할 수 있으면 다시 실행할 수 있습니다.

참고

계정은 domainName\userName 형식이어야 합니다. 시스템 계정의 경우 전체 계정 이름(예: "NT Authority\Network Service")에 따옴표를 사용해야 합니다. 시스템 계정에는 암호가 필요하지 않습니다.

매개 변수 Description
계정 참조된 계정 유형(예: /AccountType:ApplicationTier)에서 추가, 변경 또는 삭제하려는 계정의 이름을 지정합니다.
암호 서비스 계정의 암호를 지정합니다. 시스템 계정이나 암호가 없는 계정(예: Network Service)을 사용하는 경우 이 매개 변수는 선택 사항입니다.
sqlInstance /ResetOwner와 함께만 사용됩니다.

기본 instance 이외의 instance 사용하려는 경우 SQL Server 실행 중인 서버의 이름과 instance 이름을 지정합니다. 다음 형식의 이름 및 인스턴스를 지정해야 합니다.

ServerName\InstanceName.
databaseName /ResetOwner와 함께만 사용됩니다.

소유권을 변경할 데이터베이스의 이름을 지정합니다. 이 명령을 사용하여 지정한 데이터베이스의 소유권을 명령 실행에 사용 중인 계정으로 다시 설정합니다.
continue 명령을 실행할 때 사용할 수 없는 그룹을 업데이트합니다. 이 옵션은 대체로 NLB 시나리오에서 사용됩니다.

사전 요구 사항

accounts 명령을 사용하려면 다음의 멤버여야 합니다.

  • Azure DevOps 관리자 보안 그룹
  • Azure DevOps Server instance 사용하는 모든 SQL Server 인스턴스에 대한 sysadmin 역할입니다.

/proxy 옵션을 사용하는 경우 프록시 서버의 관리자여야 합니다.

자세한 내용은 Azure DevOps Server 대한 권한 참조를 참조하세요.

설명

accounts 명령을 사용하여 Azure DevOps Server 서비스 계정, 데이터베이스 및 서비스 계정 그룹의 변경 내용을 자동화합니다. 이미 만든 계정을 구성할 수 있지만 계정을 만들 수는 없습니다.

계정의 도메인 또는 작업 그룹을 변경하기 전에 계정에 중요한 계정이 있어야 하며 애플리케이션 계층 서버에 대한 권한을 위임할 수 없습니다. 자세한 내용은 Microsoft 웹 사이트: 위임된 인증 사용에서 이 페이지를 참조하세요.

accounts 명령은 온-프레미스 Azure DevOps Server 배포를 지원합니다. Azure DevOps Services 계정의 계정 소유자를 변경하려면 계정 소유권 변경을 참조하세요.

예제

Reporting Services 데이터 원본의 서비스 계정을 Contoso 도메인의 새 계정, Contoso\NewAccount및 암호Password로 변경합니다.

TfsConfig accounts /change /AccountType:ReportingDataSource /Account:Contoso\NewAccount /Password:Password

네트워크 서비스 시스템 계정을 Azure DevOps Server 서비스 계정 그룹에 추가합니다(시스템 계정에 암호가 없음).

TfsConfig accounts /add /AccountType:ApplicationTier /Account:"NT Authority\Network Service"

명명된 instance SQL Server TeamDatabases 데이터베이스 ContosoMainTFS_Warehouse 소유권을 명령을 실행 중인 사용자 계정으로 변경합니다.

참고

이 명령을 사용할 때 데이터베이스 소유자로 설정할 계정을 지정할 수 없습니다. 소유자는 명령 실행에 사용 중인 계정으로 설정됩니다.

TfsConfig accounts /ResetOwner /SQLInstance:ContosoMain\TeamDatabases /DatabaseName:TFS_Warehouse

AddProjectReports

참고

addProjectReports 명령은 TFS 2017.1 이상 버전에서 사용할 수 있습니다.

addProjectReports 명령을 사용하여 기존 팀 프로젝트에 대한 보고서를 추가하거나 덮어씁니다.

TfsConfig addProjectReports /collection:<teamProjectCollectionUrl> /teamProject:<projectName> /template:<templateName>
[/force]
옵션 설명
collection 필수 사항입니다. 팀 프로젝트 컬렉션의 URL입니다.
teamproject 필수 사항입니다. 팀 프로젝트의 이름을 지정합니다.
template 필수 사항입니다. 프로세스 템플릿의 이름을 지정합니다. 사용 가능한 옵션은 Agile, CMMI 및 스크럼입니다.
force 선택 사항입니다. 보고서가 이미 있는 경우 덮어쓰도록 지정합니다.

사전 요구 사항

addProjectReports 명령을 사용하려면 TFSConfig를 실행하고 보고 서비스에 보고서를 업로드할 수 있는 권한이 있어야 합니다.

설명

프로젝트에 보고서가 없거나 프로세스에 대해 정의된 보고서를 업데이트하려는 경우 addProjectReports 명령을 사용합니다.

다음 경우에 이 명령을 사용해야 할 수 있습니다.

  • 프로젝트는 Visual Studio가 아닌 Azure DevOps 포털에서 만들어졌습니다.
  • Visual Studio에서 프로젝트를 만들었지만 Azure DevOps Server 보고가 구성되지 않았습니다.

프로젝트의 Azure DevOps Server 업그레이드하고 이전 보고서가 더 이상 호환되지 않으므로 프로젝트의 보고서를 기본 보고서로 덮어쓰려면 /force 옵션을 사용합니다. 보고서를 사용자 지정한 경우 이 작업을 수행하기 전에 백업을 수행하세요.

온-프레미스 Azure DevOps Server 보고서를 추가하는 방법에 대한 자세한 내용은 프로젝트에 보고서 추가를 참조하세요.

예제

다음 예제에서는 프로젝트 컬렉션에서 http://myTfsServer:8080/tfs/DefaultCollection 프로젝트에 Agile 보고서를 MyProject 추가하는 방법을 보여 줍니다.

TFSConfig addProjectReports /collection:http://myTfsServer:8080/tfs/DefaultCollection /teamproject:MyProject /template:Agile

인증

인증 명령은 Azure DevOps Server 애플리케이션 계층 또는 프록시 웹 사이트에서 사용하는 네트워크 인증 프로토콜을 변경합니다.

TFSConfig Authentication [/provider:NTLM|Negotiate] [/viewAll] [/siteType:ApplicationTier|Proxy]

옵션

설명

/viewAll

Azure DevOps Server 대한 현재 인증 설정을 표시합니다.

/provider: { NTLM | 협상 }

웹 사이트에 대해 구성할 인증 공급자를 지정합니다.

  • NTLM: NTML 인증 프로토콜 사용
  • 협상: 협상(Kerberos) 인증 프로토콜 사용

/siteType

네트워크 인증 프로토콜을 변경하려는 웹 사이트(애플리케이션 계층 또는 프록시)를 지정합니다. 애플리케이션 계층이 기본값입니다.

사전 요구 사항

인증 명령을 사용하려면 siteType 옵션의 값에 따라 Azure DevOps Administrators 보안 그룹의 구성원이자 애플리케이션 계층 서버 또는 프록시 서버의 로컬 관리자여야 합니다.

설명

인증 명령은 Azure DevOps Server 사용하는 하나 이상의 웹 사이트에 대한 네트워크 인증 프로토콜을 변경하려는 관리자가 사용합니다. 관리자는 응용 프로그램 계층에서 이 명령을 실행하여 네트워크 인증 프로토콜을 변경해야 하는 웹 사이트를 업데이트합니다. 명령은 IIS 메타베이스에서 NTAuthenticationProviders 속성을 변경합니다.

인증 명령을 사용하여 인증 프로토콜을 변경하기 전에 /viewAll 옵션을 사용하여 명령을 실행하여 기존 설정이 무엇인지 확인할 수 있습니다.

예제

다음 예제에서는 네트워크 인증 프로토콜에 대해 할당된 현재 값을 표시합니다.

TFSConfig Authentication /viewAll

인증서

인증서 명령을 사용하여 HTTPS, SSL(보안 소켓 계층) 및 인증서를 활용하는 Azure DevOps Server 배포에서 클라이언트 인증을 위해 인증서를 구성하는 방법을 변경합니다.

TfsConfig certificates [/machine] [/disable] [/autoSelect] [/noprompt] [/thumbprints:thumbprint1[,thumbprint2,...]]
옵션 Description
컴퓨터 인증서 목록이 현재 사용자 컨텍스트 대신 로컬 컴퓨터 컨텍스트에서 시작되도록 지정합니다.
disable 클라이언트 인증 인증서 설정을 사용하지 않도록 지정합니다.
autoSelect 인증서 목록에서 인증서가 자동으로 선택되도록 지정합니다. 클라이언트 인증서 관리 창이 열리지 않습니다.
noprompt 인증서 명령을 실행할 때 클라이언트 인증서 관리 창이 열리지 않도록 지정합니다.
지문 지정된 지문과 일치하는 인증서가 사용되도록 지정합니다. 개별 지문을 쉼표로 구분하여 둘 이상의 인증서를 지정할 수 있습니다.

사전 요구 사항

인증서 명령을 사용하려면 명령을 실행하는 컴퓨터의 Azure DevOps Administrators 보안 그룹 및 로컬 관리자 그룹의 구성원이어야 합니다. 자세한 내용은 Azure DevOps Server 대한 권한 참조를 참조하세요.

설명

기본적으로 인증서 명령은 현재 사용자의 인증서 목록에서 클라이언트 인증서를 자동으로 선택합니다. 그러나 명령에 대한 옵션을 사용하여 현재 사용자 컨텍스트 또는 로컬 컴퓨터 컨텍스트에서 특정 인증서 또는 인증서를 지정할 수 있습니다.

인증서 명령을 사용하기 전에 먼저 인증서를 활용하도록 Azure DevOps Server 배포에서 서버를 구성해야 합니다. 자세한 내용은 Azure DevOps Server 대한 SSL(Secure Sockets Layer)을 사용하여 HTTPS 설정을 참조하세요.

인증서 명령을 사용하여 HTTPS/SSL 및 인증서를 사용하도록 구성된 Azure DevOps Server 배포에 사용되는 클라이언트 인증서를 구성합니다. 옵션 없이 인증서 명령을 사용하는 경우 명령을 실행하는 현재 사용자 컨텍스트에서 클라이언트 인증서가 자동으로 선택됩니다.

예제

다음 예제에서는 프롬프트 없이 지문 aa bb cc dd ee 이 있는 로컬 컴퓨터 인증서를 지정하는 방법을 보여 줍니다.

TfsConfig certificates /machine /thumbprint:aa bb cc dd ee /noprompt

다음 예제에서는 현재 사용자 저장소에서 클라이언트 인증서의 자동 선택을 사용 하 여 지정 하는 방법을 보여 있습니다.

TfsConfig certificates /autoselect

ChangeServerID

changeServerID 명령은 Azure DevOps Server 데이터베이스와 연결된 GUID를 변경합니다. GUID는 Azure DevOps Server 배포 내에서 고유해야 합니다. 둘 이상의 데이터베이스에 동일한 GUID가 있는 경우 배포가 불안정하거나 사용할 수 없게 될 수 있습니다. 구성 데이터베이스의 GUID, 배포의 모든 프로젝트 컬렉션 데이터베이스에 대한 GUID 또는 둘 다를 변경할 수 있습니다.

일반적으로 매일 작업에서 이 명령을 사용하지는 않지만 다음과 같은 상황에서 이 명령을 사용할 수 있습니다.

  • 배포를 새 하드웨어로 복원했고 이전 배포는 여전히 작동하며 두 배포를 모두 활용하려고 합니다. 이 시나리오를 서버 복제라고도 합니다.

  • 프로덕션 환경을 방해할 위험이 없도록 중복 배포에서 소프트웨어 업데이트 또는 하드웨어 구성을 테스트하려고 합니다.

  • 배포를 복원할 수 있도록 테스트 랩 또는 별도의 환경에서 새 하드웨어로 데이터베이스 복원을 완전히 테스트하려고 합니다.

  • 해당 GUID가 이미 예약된 다른 배포로 이동한 후 컬렉션 데이터베이스에 대한 GUID를 다시 설정해야 합니다.

참고

changeServerID 명령은 되돌릴 수 없습니다. GUID가 변경된 후에는 해당 데이터베이스의 이전 버전을 복원하는 것 외에는 해당 변경 내용을 실행 취소할 수 없습니다.

TfsConfig changeServerID /sqlInstance:<serverName> /databaseName:<configurationDatabaseName>
	[/projectCollectionsOnly] [/configDBOnly] [/collectionName]
옵션 Description
sqlInstance 필수 사항입니다. 기본 instance 이외의 instance 사용하려는 경우 SQL Server 실행하는 서버의 이름과 instance 이름을 지정합니다. instance 지정하는 경우 형식ServerName\InstanceName을 사용해야 합니다.
databaseName 필수 사항입니다. Azure DevOps Server 구성 데이터베이스의 이름을 지정합니다. 기본적으로 이 데이터베이스의 이름은 TFS_ConfigurationDB입니다.
projectCollectionsOnly 컬렉션의 GUID만 변경되도록 지정합니다.
configDBOnly 구성 데이터베이스의 GUID만 변경되도록 지정합니다.
collectionName 특정 컬렉션에 대한 새 instance ID를 만들지만 Azure DevOps instance 및 기타 컬렉션에는 만들지 않도록 지정합니다.

사전 요구 사항

changeServerID 명령을 사용하려면 Azure DevOps Administrators 보안 그룹의 구성원이자 Azure DevOps Server 사용하는 모든 SQL Server 인스턴스에 대한 sysadmin 보안 역할의 멤버여야 합니다. 자세한 내용은 Azure DevOps에 대한 권한 참조를 참조하세요.

설명

changeServerID 명령을 사용하여 테스트 또는 복제 목적으로 Azure DevOps Server 배포의 개별 중복을 만듭니다. changeServerID 명령을 사용한 후에는 클라이언트가 변경된 서버에 대한 연결을 만들도록 지시해야만 사용할 수 있습니다.

예제

다음 예제에서는 구성 데이터베이스가 SQL Server 명명된 instance 명명 ContosoMain 된 서버에서 호스트되는 Azure DevOps Server Contoso1 배포에서 모든 데이터베이스의 GUID TeamDatabases 를 변경하는 방법을 보여 줍니다.

TfsConfig changeServerID /SQLInstance:ContosoMain\TeamDatabases /DatabaseName:TFS_ConfigurationDB

CodeIndex

codeIndex 명령을 사용하여 Azure DevOps Server 코드 인덱싱을 관리합니다. 예를 들어 인덱싱을 다시 설정하여 CodeLens 정보를 수정하거나 인덱싱을 해제하여 서버 성능 문제를 조사할 수 있습니다.

TfsConfig codeIndex /indexingStatus | /setIndexing:[on|off|keepupOnly] |
	/ignoreList:[ add | remove | removeAll | view ] <serverPath> |
	/listLargeFiles [/fileCount:FileCount] [/minSize:MinSize] |
	/reindexAll | 
    /destroyCodeIndex [/noPrompt] |
	/temporaryDataSizeLimit:[ view | <SizeInGBs> | disable ] |
	/indexHistoryPeriod:[ view | all | <NumberOfMonths> ] [/collectionName:<collectionName> | /collectionId:<collectionId>]
옵션 Description
indexingStatus 코드 인덱싱 서비스의 상태 및 구성을 보여 줍니다.
setIndexing on: 모든 변경 집합의 인덱싱을 시작합니다.
off: 모든 변경 집합의 인덱싱을 중지합니다.
keepupOnly: 이전에 만든 변경 집합의 인덱싱을 중지하고 새 변경 집합의 인덱싱만 시작합니다.
ignoreList 인덱싱하지 않을 코드 파일의 목록 및 해당 경로를 지정합니다.

add: 인덱싱하지 않을 파일을 무시된 파일 목록에 추가합니다.
remove: 인덱싱할 파일을 무시된 파일 목록에서 제거합니다.
removeAll: 무시된 파일 목록을 지우고 모든 파일의 인덱싱을 시작합니다.
view: 인덱싱되고 있지 않는 모든 파일이 표시됩니다.
ServerPath: 코드 파일의 경로를 지정합니다.

서버 경로의 시작이나 끝 또는 양쪽 끝에 와일드카드 문자(*)를 사용할 수 있습니다.
listLargeFiles 지정된 크기(KB)를 초과하는 지정된 파일 수를 표시합니다. 그런 다음 /ignoreList 옵션을 사용하여 인덱싱에서 해당 파일을 제외할 수 있습니다.

이를 위해 업데이트 3이 포함된 Team Foundation Server 2013이 필요합니다.
reindexAll 이전에 인덱싱된 데이터를 지우고 인덱싱을 다시 시작합니다.
destroyCodeIndex 코드 인덱스를 삭제하고 인덱싱된 모든 데이터를 제거합니다. /noPrompt 옵션을 사용하는 경우 확인이 필요하지 않습니다.
temporaryDataSizeLimit 변경 집합을 처리할 때 CodeLens에서 만드는 임시 데이터의 양을 제어합니다. 기본 제한은 6GB(업데이트 5에서는 2GB)입니다.

view: 현재 크기 제한을 표시합니다.
SizeInGB: 크기 제한을 변경합니다.
disable: 크기 제한을 제거합니다.

이 제한은 CodeLens가 새 변경 집합을 처리하기 전에 확인됩니다. 임시 데이터가 이 제한을 초과하면 CodeLens는 새 변경 집합이 아닌 이전 변경 집합 처리를 일시 중지합니다. CodeLens는 데이터가 정리되고 이 제한 아래로 떨어진 후에 처리를 다시 시작합니다. 하루에 한 번씩 자동으로 정리됩니다. 정리가 시작되기 전까지 임시 데이터가 이 제한을 초과할 수 있습니다.

이를 위해 업데이트 4가 포함된 Team Foundation Server 2013이 필요합니다.
indexHistoryPeriod 변경 내용을 인덱싱할 기간을 제어합니다. 이 옵션은 CodeLens에서 표시하는 기록의 양에 영향을 줍니다. 기본 제한은 12개월입니다. 즉, CodeLens는 지난 12개월의 변경 내용만 표시합니다.

view: 현재 기간(월)을 표시합니다.
all: 모든 변경 내용을 인덱싱합니다.
NumberOfMonths: 변경 기록을 인덱싱하는 데 사용되는 월 수를 변경합니다.

이를 위해 업데이트 4가 포함된 Team Foundation Server 2013이 필요합니다.
collectionName CodeIndex 명령을 실행할 프로젝트 컬렉션의 이름을 지정합니다. /CollectionId를 사용하지 않는 경우 필수적 요소입니다.
collectionId CodeIndex 명령을 실행할 프로젝트 컬렉션의 ID 번호를 지정합니다. /CollectionName을 사용하지 않는 경우 필수

사전 요구 사항

codeIndex 명령을 사용하려면 Azure DevOps Administrators 보안 그룹의 구성원이어야 합니다. Azure DevOps Server 대한 권한 참조를 참조하세요.

예제

코드 인덱싱 상태 및 구성을 보려면

TfsConfig codeIndex /indexingStatus /collectionName:"Fabrikam Web Site"

모든 변경 집합의 인덱싱을 시작하려면

TfsConfig codeIndex /setIndexing:on /collectionName:"Fabrikam Web Site"

이전에 만든 변경 집합의 인덱싱을 중지하고 새 변경 집합의 인덱싱만 시작하려면

TfsConfig codeIndex /setIndexing:keepupOnly /collectionName:"Fabrikam Web Site"

10KB보다 큰 파일을 최대 50개 찾으려면:

TfsConfig codeIndex /listLargeFiles /fileCount:50 /minSize:10 /collectionName:"Fabrikam Web Site"

인덱싱에서 특정 파일을 제외하고 무시된 파일 목록에 추가하려면

TfsConfig codeIndex /ignoreList:add "$/Fabrikam Web Site/Catalog.cs" /collectionName:"Fabrikam Web Site"

인덱싱되지 않는 모든 파일을 보려면:

TfsConfig codeIndex /ignoreList:view

이전에 인덱싱된 데이터를 지우고 인덱싱을 다시 시작하려면

TfsConfig codeIndex /reindexAll /collectionName:"Fabrikam Web Site"

모든 변경 집합 기록을 저장하려면

TfsConfig codeIndex /indexHistoryPeriod:all /collectionName:"Fabrikam Web Site"

CodeLens 임시 데이터에 대한 크기 제한을 제거하고 임시 데이터 크기에 관계 없이 인덱싱을 계속하려면

TfsConfig codeIndex /temporaryDataSizeLimit:disable /collectionName:"Fabrikam Web Site"

확인 후 코드 인덱스를 삭제하려면

TfsConfig codeIndex /destroyCodeIndex /collectionName:"Fabrikam Web Site"

컬렉션

컬렉션 명령을 사용하여 Azure DevOps Server 배포에서 프로젝트 컬렉션을 연결, 분리 또는 삭제할 수 있습니다. 컬렉션 명령을 사용하여 기존 컬렉션 의 데이터베이스를 복제하고 이름을 바꾸고 배포에 연결할 수도 있습니다. 이 프로세스를 컬렉션 복제라고도 합니다.

TfsConfig collection {/attach | /create | /detach | /delete} [/collectionName:<collectionName>]
    [/description:<collectionDescription>]
    [/collectionDB:<serverName>;<databaseName>]
    [/processModel:Inheritance|Xml]
    [/reportingFolder:<reportingFolderPath>]
    [/clone] [/verify] [/continue]
옵션 Description
연결 /detach/delete를 사용하지 않을 경우 필요합니다. 이 옵션을 지정하는 경우 /collectionDB 옵션도 사용해야 합니다. 옵션으로 이 옵션과 함께 /collectionName/clone 을 사용할 수도 있습니다. /attach 옵션을 사용하는 경우 지정된 컬렉션 데이터베이스가 Azure DevOps Server 배포에 추가됩니다.
create 컬렉션을 만듭니다.
detach /attach/delete를 모두 사용하지 않을 경우 필요합니다. 이 옵션을 지정하는 경우 /collectionName 옵션도 사용해야 합니다. /detach 옵션을 사용하는 경우 지정된 컬렉션의 데이터베이스가 중지되고 컬렉션이 Azure DevOps Server 배포에서 분리됩니다.
삭제 /detach/attach를 사용하지 않을 경우 필요합니다. 이 옵션을 지정하는 경우 /collectionName 옵션도 사용해야 합니다. /delete 옵션을 사용하는 경우 지정된 컬렉션의 데이터베이스가 중지되고 컬렉션이 Azure DevOps Server 영구적으로 분리됩니다. 이 경우 해당 배포나 다른 배포에 컬렉션 데이터베이스를 다시 연결할 수 없습니다.
CollectionName 프로젝트 컬렉션의 이름을 지정합니다. 공백이 포함된 컬렉션 이름은 "My Collection"과 같이 따옴표로 묶어야 합니다. /detach 또는 /delete를 사용하는 경우 필요합니다. /detach 또는 /delete와 함께 이 옵션을 사용하는 경우 분리 또는 삭제할 컬렉션을 지정합니다. /attach와 함께 이 옵션을 사용하는 경우 컬렉션의 새 이름을 지정합니다. /attach/clone 둘 다에서 이 옵션을 사용하는 경우 중복된 컬렉션의 이름을 지정합니다.
CollectionDB /attach를 사용하는 경우 필요합니다. 이 옵션은 SQL Server 실행 중인 서버의 이름과 해당 서버에서 호스트되는 컬렉션 데이터베이스의 이름을 지정합니다.
ServerName Azure DevOps Server 구성 데이터베이스를 호스트하는 서버의 이름과 기본 instance 이외의 instance 사용하려는 경우 instance 이름을 지정합니다. instance 지정하는 경우 형식ServerName\InstanceName을 사용해야 합니다.
DatabaseName 구성 데이터베이스의 이름을 지정합니다. 기본적으로 이 데이터베이스의 이름은 TFS_ConfigurationDB입니다.
clone 이 옵션을 지정하면 원래 컬렉션 데이터베이스가 SQL Server 복제본으로 연결되고 이 데이터베이스가 Azure DevOps Server 연결됩니다. 이 옵션은 주로 프로젝트 컬렉션 분할의 일부로 사용됩니다.

/delete 옵션은 SQL Server 컬렉션 데이터베이스를 삭제하지 않습니다. Azure DevOps Server 컬렉션 데이터베이스를 삭제한 후 SQL Server 데이터베이스를 수동으로 삭제할 수 있습니다.

사전 요구 사항

컬렉션 명령을 사용하려면 TfsConfig를 실행하는 컴퓨터의 로컬 관리자 그룹뿐만 아니라 Team Foundation Administrators 보안 그룹의 구성원이어야 합니다. 또한 Azure DevOps Server 데이터베이스에서 사용하는 모든 SQL Server 인스턴스에 대한 sysadmin 보안 역할의 멤버여야 합니다. 배포가 SharePoint와 통합되어 있고 /delete 옵션을 사용하는 경우 사이트 모음을 삭제하는 SharePoint 팜에 대한 팜 관리자 그룹의 구성원이어야 합니다.

자세한 내용은 Azure DevOps Server 대한 권한 참조를 참조하세요.

설명

컬렉션을 대화형으로 관리하거나 컬렉션을 만들려면 Azure DevOps용 관리 콘솔에서 Project Collections 노드를 사용할 수 있습니다. 프로젝트 컬렉션 관리를 참조하세요.

예제

다음 예제에서는 Azure DevOps Server 배포에서 프로젝트 컬렉션을 영구적으로 제거하는 Contoso Summer Intern Projects 방법을 보여줍니다.

TfsConfig collection /delete /CollectionName:"Contoso Summer Intern Projects"
TFSConfig - Team Foundation Server Configuration Tool
Copyright � Microsoft Corporation. All rights reserved.
Deleting a project collection is an irreversible operation. A deleted collection cannot be reattached to the same or another Team Foundation Server. Are you sure you want to delete 'Contoso Summer Intern Projects'? (Yes/No)
Yes
Found Collection 'Contoso Summer Intern Projects' Deleting...
The delete of collection 'Contoso Summer Intern Projects' succeeded.

다음 예제에서는 프로젝트 컬렉션을 복제 Contoso Summer Interns Projects 하고, 이름을 로 지정Contoso Winter Interns Projects하고, 중복 컬렉션을 Azure DevOps Server 배포에 연결하는 방법을 보여줍니다.

TfsConfig collection /attach /collectiondb:"ContosoMain;TFS_Contoso Summer Interns Projects"
    /CollectionName:"Contoso Winter Intern Projects" /clone

ColumnStoreIndex

참고

명령 가용성: TFS 2015.2 이상 버전이 필요합니다.

columnStoreIndex 명령을 사용하여 Azure DevOps Server 배포에서 사용하는 데이터베이스에 대한 열 저장소 인덱스를 사용하거나 사용하지 않도록 설정합니다.

TfsConfig columnStoreIndex /enabled:<true|false>
	/sqlInstance:<serverName>
	/databaseName:<databaseName>
옵션 Description
사용 지정된 SQL instance 및 데이터베이스에 대해 열 저장소 인덱스를 사용하거나 사용하지 않도록 설정할지 여부를 지정합니다.
sqlInstance 열 저장소 인덱스를 사용하거나 사용하지 않도록 설정하는 데이터베이스를 호스트하는 서버의 이름과 기본값 이외의 instance 사용되는 경우 instance 이름을 지정합니다. instance 지정하는 경우 형식ServerName\InstanceName을 사용해야 합니다.
databaseName 열 저장소 인덱스를 사용하거나 사용하지 않도록 설정할 데이터베이스의 이름을 지정합니다.

사전 요구 사항

columnStoreIndex 명령을 사용하려면 지정된 SQL Server instance 대한 sysadmin 역할의 멤버여야 합니다.

설명

일반적으로 열 저장소 인덱스를 지원하지 않는 SQL instance 데이터베이스를 이동하는 경우 columnStoreIndex 명령을 사용합니다. 이 경우 데이터베이스를 성공적으로 이동하려면 모든 열 저장소 인덱스를 사용하지 않도록 설정해야 합니다. 마찬가지로 데이터베이스를 지원되는 열 저장소 인덱스인 SQL instance 다시 이동하는 경우 공간을 절약하고 성능을 얻기 위해 열 저장소 인덱스 다시 사용하도록 설정할 수 있습니다.

예제

다음 예제에서는 명명TeamDatabases된 instance 서버에서 실행되는 SQL instance 라는 TFS_DefaultCollectionContosoMain 데이터베이스에 대해 열 저장소 인덱스 를 사용하도록 설정하는 방법을 보여 줍니다.

TfsConfig columnStoreIndex /enabled:true /sqlInstance:ContosoMain\TeamDatabases /databaseName:TFS_DefaultCollection

ConfigureMail

이메일 경고에 기존 SMTP 서버를 사용하도록 Azure DevOps Server 실행하는 서버를 구성합니다.

TfsConfig configureMail /Enabled:<true|false> /FromEmailAddress:<emailAddress> /SmtpHost:<SMTPHostName>
옵션 Description
FromEmailAddress 검사, 사용자에게 할당된 작업 항목 또는 기타 알림에 대해 Azure DevOps Server 메일 알림 보낼 주소를 지정합니다. 이 주소는 유효성도 검사되며 서버 구성에 따라 메일 서버에서 유효한 전자 메일 계정을 나타내야 할 수 있습니다. 주소가 없거나 유효하지 않은 경우 기본 전자 메일 주소가 사용됩니다.
SmtpHost 메일 서버를 호스트하는 서버의 이름을 지정합니다.

사전 요구 사항

configureMail 명령을 사용하려면 Azure DevOps 애플리케이션 계층 서버에서 Team Foundation Administrators 보안 그룹의 구성원이어야 합니다. 자세한 내용은 Azure DevOps Server 대한 권한 참조를 참조하세요.

설명

관리 콘솔을 사용하여 SMTP 서버를 사용하도록 Azure DevOps Server 구성할 수도 있습니다.

예제

다음 예제에서는 을 전자 메일 주소 TFS@contoso.com 에서 로 구성하고 SMTP 메일 서버를 로 ContosoMailServer구성하는 데 사용되는 구문을 보여줍니다.

TfsConfig configureMail /FromEmailAddress:TFS@contoso.com /SmtpHost:ContosoMailServer

DBCompression

dbCompression 명령을 사용하여 Azure DevOps Server 배포에서 사용하는 데이터베이스에 대해 데이터베이스 페이지 압축을 사용하거나 사용하지 않도록 설정합니다.

TfsConfig dbCompression /pageCompression:[enable|disable]
	/sqlInstance:<serverName>
	/databaseName:<databaseName>
	[/rebuildNow [/offline]]
옵션 Description
pageCompression 지정된 SQL instance 및 데이터베이스에 대해 페이지 압축을 사용하거나 사용하지 않도록 설정할지 여부를 지정합니다.
sqlInstance 페이지 압축을 사용하거나 사용하지 않도록 설정할 데이터베이스를 호스트하는 서버의 이름과 기본값 이외의 instance 사용되는 경우 instance 이름을 지정합니다. instance 지정하는 경우 형식을 사용해야 합니다.ServerName\InstanceName
databaseName 페이지 압축을 사용하거나 사용하지 않도록 설정할 데이터베이스의 이름을 지정합니다.
rebuildNow 선택 사항입니다. 데이터베이스 인덱스를 즉시 다시 빌드(필요한 경우 압축 또는 압축 해제)해야 하는지 여부를 지정합니다. 사용하지 않으면 매주 실행되는 백그라운드 작업에 의해 인덱스가 다시 작성됩니다.
오프라인 선택 사항입니다. /rebuildNow와 함께만 사용됩니다. /offline을 지정하지 않으면 인덱스가 온라인으로 다시 작성됩니다. /offline을 지정하면 인덱스가 오프라인으로 다시 작성됩니다. 이렇게 하면 다른 작업이 차단되지만 온라인 인덱스 다시 작성보다 더 빠를 수 있습니다.

사전 요구 사항

dbCompression 명령을 사용하려면 지정된 SQL Server instance 대한 sysadmin 역할의 멤버여야 합니다.

설명

압축을 지원하지 않는 SQL instance 데이터베이스를 이동하는 경우 일반적으로 dbCompression 명령을 사용합니다. 이 경우 데이터베이스를 성공적으로 이동하려면 압축을 사용하지 않도록 설정하고 모든 인덱스의 압축을 해제해야 합니다. 마찬가지로 압축을 지원하는 SQL instance 데이터베이스를 다시 이동하는 경우 공간을 절약하기 위해 압축을 다시 사용하도록 설정할 수 있습니다.

이 명령은 Azure DevOps Server 데이터베이스 페이지 압축을 사용하는 것을 선호하는지 여부만 변경합니다. 데이터베이스는 여전히 버전이 압축을 지원하는 SQL instance 호스트되어야 합니다. 자세한 내용은 SQL Server 버전에서 지원하는 기능을 참조하세요.

예제

다음 예제에서는 명명TeamDatabases된 instance 서버에서 실행되는 ContosoMain SQL instance 라는 TFS_DefaultCollection 데이터베이스에 대해 인덱스를 온라인으로 다시 빌드하여 페이지 압축을 즉시 사용하도록 설정하는 방법을 보여 줍니다.

TfsConfig dbCompression /pageCompression:enable /sqlInstance:ContosoMain\TeamDatabases /databaseName:TFS_DefaultCollection /rebuildNow

DeleteTestResults

deleteTestResults 명령을 사용하여 컬렉션 저장소에서 이전 저장된 테스트 결과를 삭제합니다. 이는 일반적으로 저장소 크기를 줄이거나 테스트 결과를 새 스키마로 마이그레이션할 때 걸리는 시간을 줄이기 위해 수행됩니다.

TfsConfig deleteTestResults /ageInDays:<number> /sqlInstance:<serverName> /databaseName:<databaseName>
    [/type:[automated|manual|all]]
    [/preview]
옵션 Description
ageInDays 지정된 일 수보다 오래된 테스트 결과가 삭제되거나 미리 보기됩니다.
sqlInstance 테스트 결과가 삭제되거나 미리 보기되는 데이터베이스를 호스트하는 서버의 이름과 기본값 이외의 instance 사용되는 경우 instance 이름입니다. instance 지정하는 경우 형식ServerName\InstanceName을 사용해야 합니다.
databaseName 테스트 결과를 삭제하거나 미리 볼 데이터베이스의 이름입니다.
형식 (선택 사항) 삭제할 테스트 결과의 유형입니다. 유효한 값은 자동화,수동모두입니다.
미리 보기 선택 사항입니다. 기간(일)에 따라 삭제될 테스트 결과 수를 표시하지만 이러한 결과는 삭제하지 않습니다.

사전 요구 사항

deleteTestResults 명령을 사용하려면 지정된 SQL Server instance 대한 sysadmin 역할의 멤버여야 합니다.

설명

/preview 매개 변수를 사용하여 이러한 결과를 삭제하지 않고 프로젝트 이름 및 연도별로 정렬된 테스트 결과를 확인합니다.

예제

다음 예제에서는 명명TeamDatabases된 instance 서버 ContosoMain 에서 실행되는 SQL instance 라는 TFS_DefaultCollection 데이터베이스에 대해 60일 이전의 수동 테스트 결과를 삭제하는 방법을 보여 줍니다.

TfsConfig deleteTestResults /ageInDays:60 /sqlInstance:ContosoMain\TeamDatabases /databaseName:TFS_DefaultCollection /type:manual

DeploymentPool

deploymentPool 명령은 모든 배포 그룹을 한 배포 풀에서 다른 배포 풀로 마이그레이션하도록 설계되었습니다.

TfsConfig deploymentpool /migrateDeploymentGroups /fromPool:<source pool name> /toPool:<destination pool name>
옵션 Description
fromPool 원본 풀 이름입니다.
toPool 대상 풀 이름입니다.

Identities

ID 명령은 Azure DevOps Server 배포에서 사용자 및 그룹의 SID(보안 식별자)를 나열하거나 변경합니다. 다음 시나리오 중 하나에 속하는 경우 사용자 및 그룹의 SID를 변경하거나 업데이트해야 할 수도 있습니다.

  • 배포 도메인 변경

  • 작업 그룹에서 도메인으로 또는 도메인에서 작업 그룹으로 변경

  • Active Directory의 도메인 간에 계정 마이그레이션

참고

같은 Active Directory 포리스트 내에 있는 도메인을 변경하는 경우 이 명령을 실행할 필요가 없습니다. Azure DevOps Server 동일한 포리스트 내의 이동에 대한 SID 변경 내용을 자동으로 처리합니다.

TfsConfig identities [/change /fromdomain:<domainName1> /todomain:<domainName2>
    [/account:<accountName> [/toaccount:<accountName>]] [/sqlInstance:<serverName> /databaseName:<databaseName>]
옵션 Description
변경 ID를 나열하지 않고 변경하도록 지정합니다.
fromdomain /change를 사용할 때 필요합니다. ID를 변경할 원본 도메인을 지정합니다. 작업 그룹 환경에서 변경하는 경우 해당 컴퓨터의 이름을 지정합니다.
todomain /change를 사용할 때 필요합니다. ID를 변경할 대상 도메인을 지정합니다. 작업 그룹 환경으로 변경하는 경우 해당 컴퓨터의 이름을 지정합니다.
account ID를 나열하거나 변경할 계정의 이름을 지정합니다.
toaccount ID를 변경할 계정의 이름을 지정합니다.
SQLInstance 기본 instance 이외의 instance 사용하려는 경우 SQL Server 실행하는 서버의 이름과 instance 이름을 지정합니다. 인스턴스를 지정하는 경우 다음 형식을 사용해야 합니다.

서버이름\인스턴스이름
DatabaseName Azure DevOps Server 구성 데이터베이스의 이름을 지정합니다.

사전 요구 사항

ID 명령을 사용하려면 Team Foundation Administrators 보안 그룹의 구성원이자 Team Foundation Server에서 사용하는 모든 SQL Server 인스턴스에 대한 sysadmin 역할의 멤버여야 합니다. 자세한 내용은 Azure DevOps Server 대한 관리자 권한 설정을 참조하세요.

설명

배포에 대한 응용 프로그램 계층 서버를 구성하기 전에 선택적으로 ID를 변경할 데이터베이스를 지정할 수 있습니다. 예를 들어 Azure DevOps Server 배포를 복제할 때 서비스 계정을 변경할 데이터베이스를 지정할 수 있습니다.

ID를 변경할 때는 대상 계정이 Windows에 이미 있어야 합니다.

이 명령을 사용하여 변경하는 계정의 속성이 업데이트되려면 먼저 Windows에서 다음 ID 동기화를 수행할 때까지 기다려야 합니다. 이 요구 사항에는 그룹에서 사용자로, 사용자에서 그룹으로, 도메인 계정으로 로컬 계정으로 변경이 포함됩니다.

예제

다음 예제에서는 Azure DevOps Server 저장된 모든 Windows 사용자 및 그룹의 이름을 나열하고 각 사용자 또는 그룹의 SID가 Windows의 SID와 일치하는지 여부를 표시하는 방법을 보여줍니다. Contoso1 도메인 관리자는 및 Contoso1\\Testers 같은 Contoso1\\Developers 도메인 그룹을 만들어 Azure DevOps Server, SQL Server Reporting Services 및 SharePoint 제품에서 사용 권한을 쉽게 관리할 수 있도록 지원했습니다.

TfsConfig identities

    TFSConfig - Team Foundation Server Configuration Tool
    Copyright � Microsoft Corporation. All rights reserved.

    Account Name Exists (see note 1) Matches (see note 2)
    --------------------------------------------------------------------
    CREATOR OWNER True True
    Contoso1\hholt True True
    BUILTIN\Administrators True True
    Contoso1\Developers True True
    Contoso1\Testers True True
    Contoso1\PMs True True
    Contoso1\jpeoples True True
    Contoso1\Domain Admins True True
    Contoso1\SVCACCT1 True True

    9 security identifiers (SIDs) were found stored in Team Foundation Server. Of these, 9 were found in Windows. 0 had differing SIDs.

다음 예제에서는 Azure DevOps Server 있는 모든 계정의 SID를 Contoso1 도메인에서 도메인에 이름이 일치하는 ContosoPrime 계정의 SID로 변경하는 방법을 보여 줍니다. 일치하는 계정 이름의 SID만 업데이트됩니다. 예를 들어 계정이 및 ContosoPrime\hholtContoso1\hholt 존재하는 경우 hholt 계정 SID는 에 대한 ContosoPrime\hholtSID로 변경됩니다. ContosoPrime\hholt 계정이 없으면 SID가 에 대해 Contoso1\hholt업데이트되지 않습니다.

TfsConfig identities /change /fromdomain:Contoso1 /todomain:ContosoPrime

다음 예제에서는 단일 사용자 계정의 계정을 다른 ContosoPrime\jpeoples사용자 계정Contoso1\hholt의 계정인 로 변경하는 방법을 보여 있습니다.

TfsConfig identities /change /fromdomain:Contoso1 /todomain:ContosoPrime /account:hholt /toaccount:jpeoples

다음 예제에서는 배포의 NT AUTHORITY\NETWORK SERVICE 도메인을 에서 Contoso1 로 변경할 때 Azure DevOps Server 배포에 사용되는 서비스 계정의 SID를 ContosoPrime변경하는 방법을 보여줍니다. Network Service와 같은 시스템 계정을 변경하려면 2단계 프로세스를 따라야 합니다. 먼저 서비스 계정을 에서 NT AUTHORITY\NETWORK SERVICE 새 도메인의 도메인 계정으로 변경한 다음 새 도메인 TempSVC의 서버에서 NETWORK SERVICE로 계정을 다시 변경합니다. 구성 데이터베이스는 SQL Server 명명된 instance TeamDatabases 이름이 지정된 ContosoMain 서버에서 호스트됩니다.

TfsConfig identities /change /fromdomain:"NT AUTHORITY" /todomain:ContosoPrime /account:"NETWORK SERVICE"
  /toaccount:TempSVC /SQLInstance:ContosoMain\TeamDatabases /DatabaseName:TFS_ConfigurationDB

TfsConfig identities /change /fromdomain:ContosoPrime /todomain:"NT AUTHORITY" /account:TempSVC
	/toaccount:"NETWORK SERVICE"

작업

작업 명령을 사용하여 특정 프로젝트 컬렉션에 대한 가장 최근 작업 작업의 세부 정보를 제공하는 로그 파일을 만들거나 하나 또는 모든 프로젝트 컬렉션에 대한 작업을 다시 시도할 수 있습니다.

TfsConfig jobs /retry|dumplog [/CollectionName:<collectionName>] [/CollectionId:<id>]
옵션 Description
retry /dumplog를 사용하지 않는 경우 필요합니다. 지정된 프로젝트 컬렉션에 대해 가장 최근 작업을 다시 시도되도록 지정합니다. 이 옵션을 사용하는 경우 /CollectionName 또는 /CollectionID 옵션도 사용해야 합니다.
dumplog /retry를 사용하지 않는 경우 필요합니다. 컬렉션에 대한 가장 최근의 작업 작업이 로그 파일로 전송되도록 지정합니다. 이 옵션을 사용하는 경우 /CollectionName 또는 /CollectionID 옵션도 사용해야 합니다.
CollectionName /CollectionID를 사용하지 않는 경우 필요합니다. 가장 최근 작업을 다시 시도(/재시도)하거나 기록(/덤프로그)할 컬렉션의 이름을 지정합니다. 모든 컬렉션을 지정하려면 별표(*)를 사용할 수 있습니다.
CollectionID /CollectionName을 사용하지 않는 경우 필요합니다. 가장 최근 작업을 다시 시도(/재시도)하거나 기록(/덤프로그)할 컬렉션의 ID 번호를 지정합니다.

사전 요구 사항

작업 명령을 사용하려면 Azure DevOps Administrators 보안 그룹의 구성원이어야 합니다. 자세한 내용은 Azure DevOps Server 대한 권한 참조를 참조하세요.

설명

작업을 대화형으로 다시 시도하려면 Azure DevOps에 대한 관리 콘솔을 열고 컬렉션의 상태 탭을 선택한 다음 작업 다시 시도를 선택할 수 있습니다. 자세한 내용은 Azure DevOps 관리 콘솔 열기를 참조하세요.

예제

다음 예제에서는 Azure DevOps Server 프로젝트 컬렉션에 대한 최신 작업 작업을 나열하는 Contoso Summer Intern Projects 로그 파일을 만드는 방법을 보여 둡니다.

TfsConfig jobs /dumplog /CollectionName:"Contoso Summer Intern Projects"

OfflineDetach

offlineDetach 명령을 사용하여 오프라인 컬렉션 데이터베이스를 분리된 오프라인 컬렉션 데이터베이스로 만듭니다.

TfsConfig offlineDetach /configurationDB:<databaseName>
    /collectionDB:<databaseName>
옵션 Description
configurationDB 사용할 구성 데이터베이스의 이름을 지정합니다.
collectionDB 분리할 컬렉션 데이터베이스의 이름을 지정합니다.

사전 요구 사항

offlineDetach 명령을 사용하려면 지정된 SQL Server instance 대한 sysadmin 역할의 멤버여야 합니다.

설명

이 명령은 지정된 컬렉션 데이터베이스의 스키마를 수정하며 Team Foundation Server 배포에서 사용 중인 데이터베이스에 대해 실행해서는 안 됩니다. 데이터베이스가 Team Foundation Server 배포에서 사용 중인 경우 대신 를 사용합니다 TfsConfig collection /detach .

이 명령은 동일한 Azure DevOps Server 배포의 일부인 다른 컬렉션 데이터베이스를 복원하지 않고 백업에서 개별 컬렉션 데이터베이스를 복원해야 하는 경우에 유용합니다. 이전에는 완전하고 일관된 데이터베이스 집합(구성 및 모든 컬렉션)을 스테이징 환경으로 복원하고, 해당 데이터베이스를 사용하여 Azure DevOps Server 배포를 구성하고, 관심 있는 하나의 컬렉션을 분리해야 했습니다.

대신 구성 데이터베이스와 관심 있는 컬렉션 데이터베이스의 일관된 복사본을 복원하고 offlineDetach 명령을 실행할 수 있습니다. 그런 다음 분리된 컬렉션 데이터베이스를 적절한 버전에서 모든 Azure DevOps Server 배포에 연결할 수 있습니다.

예제

다음 예제에서는 라는 TFS_PrimaryCollection이름의 서버 ContosoTemp 에서 실행되는 SQL instance 라는 구성 데이터베이스를 사용하여 라는 컬렉션 데이터베이스TFS_Configuration를 분리하는 instance Backups보여 줍니다.

TfsConfig offlineDetach /configurationDB:ContosoTemp\Backups;TFS_Configuration /collectionDB:ContosoTemp\Backups;TFS_PrimaryCollection

Proxy (프록시)

프록시 명령을 사용하여 Azure DevOps 프록시 서버에서 사용하는 설정을 업데이트하거나 변경할 수 있습니다. Azure DevOps 프록시 서버는 분산 팀의 위치에서 다운로드한 버전 제어 파일의 캐시를 관리하여 분산 팀이 버전 제어를 사용하도록 지원합니다. Azure DevOps 프록시 서버를 구성하면 넓은 영역 연결에서 필요한 대역폭을 크게 줄일 수 있습니다. 또한 버전 파일의 다운로드 및 캐싱을 관리할 필요가 없습니다. 이러한 파일의 관리는 파일을 사용하는 개발자에게 표시되지 않습니다. 한편 메타데이터 교환 및 파일 업로드는 Azure DevOps Server 계속 표시됩니다. Azure DevOps Services 사용하여 클라우드에서 개발 프로젝트를 호스트하는 경우 프록시 명령을 사용하여 호스트된 컬렉션의 프로젝트에 대한 캐시를 관리할 뿐만 아니라 해당 서비스에서 사용하는 일부 설정을 관리할 수 있습니다.

Azure DevOps 프록시 서버 설치 및 프록시의 초기 구성에 대한 자세한 내용은 다음을 참조하세요.

방법: Azure DevOps 프록시 서버 설치 및 원격 사이트 설정을 참조하세요. 클라이언트 컴퓨터에서 프록시를 구성하는 방법에 대한 자세한 내용은 Azure DevOps 버전 제어 명령 참조를 참조하세요.

TfsConfig proxy /add|delete|change [/Collection:<teamProjectCollectionURL> /account:<accountName>]
	/Server:<TeamFoundationServerURL> [/inputs:Key1=Value1; Key2=Value2;...] [/continue]
옵션 Description
add 지정된 서버 또는 컬렉션을 Proxy.config 파일의 프록시 목록에 추가합니다. /add를 여러 번 실행하여 추가 컬렉션 또는 서버를 포함할 수 있습니다. Azure DevOps Services 호스트된 컬렉션에서 /add를 사용하는 경우 Azure DevOps Services 자격 증명을 입력하라는 메시지가 표시됩니다.
변경 Azure DevOps Services 대한 서비스 계정으로 저장된 자격 증명을 변경합니다. /change 옵션은 Azure DevOps Services 경우에만 사용되며 Azure DevOps Server 로컬 배포에 사용하면 안 됩니다.
삭제 Proxy.config 파일의 프록시 목록에서 지정한 서버 또는 컬렉션을 제거합니다.
account Azure DevOps Services 프록시의 서비스 계정으로 사용되는 계정을 지정합니다. 이 옵션은 /change 옵션과 함께 Azure DevOps Services 경우에만 사용됩니다.

Azure DevOps Services 사용되는 기본 서비스 계정은 "계정 서비스"입니다.
continue 확인 프로세스에서 경고가 생성되는 경우에도 명령 실행을 계속합니다.
컬렉션 Azure DevOps Services 호스트되는 프로젝트 컬렉션의 URL을 형식으로 AccountName.DomainName/CollectionName 지정합니다.
account Azure DevOps Services 대한 서비스 계정으로 사용되는 계정의 이름을 지정합니다. 계정 이름에 공백이 있을 경우 이름을 큰따옴표("")로 묶어야 합니다. 계정 이름의 모든 특수 문자는 명령줄 구문에 따라 지정해야 합니다.
account Azure DevOps Server 배포의 URL을 형식으로 ServerURL:Port/tfs 지정합니다.
PersonalAccessTokenFile 필요에 따라 개인용 액세스 토큰이 포함된 파일의 경로를 지정합니다. 이 토큰은 프록시를 등록하는 동안 컬렉션 또는 계정에 인증하는 데 사용됩니다. (TFS 2018 업데이트 1에 추가됨)
입력 선택 사항입니다. 프록시를 구성하는 동안 사용할 추가 설정 및 값을 지정합니다.!

예를 들어 및 GvfsRepositoryNameGvfsProjectName 값을 사용하여 GVFS(Git Virtual File System)에서 사용할 Git 리포지토리를 구성할 수 있습니다(TFS 2018 업데이트 1에 추가됨).

사전 요구 사항

프록시 명령을 사용하려면 Azure DevOps Administrators 보안 그룹의 구성원이자 프록시 서버의 관리자여야 합니다. 자세한 내용은 Azure DevOps Server 대한 권한 참조를 참조하세요.

설명

프록시 명령을 사용하여 Azure DevOps Server 프록시의 기존 구성을 업데이트합니다. 프록시의 초기 설치 및 구성에는 프록시 명령을 사용할 수 없습니다.

예제

다음 예제에서는 라는 Azure DevOps Server 배포 FABRIKAM 를 프록시 목록에 추가하는 방법을 보여줍니다.

TfsConfig proxy /add /Server:http://www.fabrikam.com:8080/tfs 

다음 예제에서는 개인용 액세스 토큰을 사용하여 Azure DevOps Services 호스트되는 프로젝트 컬렉션을 프록시 목록에 추가하여 인증하는 방법을 보여줍니다. 이 토큰은 프록시를 Azure DevOps Services 계정에 등록하는 데만 사용됩니다. 기본 서비스 계정은 프록시를 실행하는 데 계속 사용됩니다. 이 매개 변수는 로그인 프롬프트 없이 Azure DevOps Services 프록시 등록을 지원하기 위해 TFS 2018 업데이트 1에 추가되었습니다.

TfsConfig proxy /add /Collection:https://HelenaPetersen.tfs.visualstudio.com/PhoneSaver

다음 예제에서는 프록시 목록에 프로젝트 컬렉션을 추가하는 방법을 보여줍니다. 이 예제에서는 개인용 액세스 토큰을 사용하여 매개 변수로 지정된 컬렉션에 대해 인증합니다 /Collection . 사용할 개인용 액세스 토큰은 의 c:\PersonalAccessToken.txt파일에 저장됩니다.

TfsConfig proxy /add /Collection:https://HelenaPetersen.tfs.visualstudio.com/PhoneSaver
	/PersonalAccessTokenFile:c:\PersonalAccessToken.txt

다음 예제에서는 Azure DevOps Services 호스트되는 프로젝트 컬렉션에 프록시에서 사용하는 서비스 계정을 변경하는 방법을 보여 주세요. 컬렉션의 이름은 PhoneSaver이고, Azure DevOps Services 사용되는 계정 이름은 이며 HelenaPetersen.fabrikam.com프록시에서 사용하는 서비스 계정은 로 My Proxy Service Account변경됩니다. 계정 이름에 공백이 포함되어 있기 때문에 이름을 따옴표로 묶습니다.

TfsConfig proxy /change /Collection:https://HelenaPetersen.tfs.visualstudio.com/PhoneSaver
	/account:"My Proxy Service Account"

다음 예제에서는 GVFS에 사용할 Git 리포지토리를 추가하는 방법을 보여 줍니다.

TfsConfig proxy /add /Collection:https://HelenaPetersen.tfs.visualstudio.com/PhoneSaver /inputs:GvfsProjectName=PhoneSaver;GvfsRepositoryName=AnotherRepository

RebuildWarehouse

rebuildWarehouse 명령을 사용하여 Azure DevOps Server 사용하는 SQL Server Reporting Services 및 SQL Server Analysis Services 데이터베이스를 다시 빌드할 수 있습니다.

TfsConfig rebuildWarehouse /analysisServices | /all [/ReportingDataSourcePassword:Password]
옵션 Description
analysisServices /all이 사용되지 않는 경우 필수입니다. Analysis Services의 데이터베이스만 다시 빌드하도록 지정합니다. Analysis Services에 대한 데이터베이스가 없는 경우 /reportingDataSourcePassword 옵션도 사용해야 합니다.
모두 /analysisServices를 사용하지 않는 경우 필요합니다. Azure DevOps Server 사용하는 모든 보고 및 분석 데이터베이스가 다시 작성되도록 지정합니다.
reportingDataSourcePassword TFS_Analysis 데이터베이스가 없는 경우 필수입니다. SQL Server Reporting Services(TFSReports)의 데이터 원본 계정으로 사용되는 계정의 암호를 지정합니다. 자세한 내용은 Azure DevOps Server 서비스 계정 및 종속성을 참조하세요.

사전 요구 사항

rebuildWarehouse 명령을 사용하려면 다음 그룹의 멤버여야 합니다.

  • Azure DevOps용 관리 콘솔을 실행하는 서버 또는 서버의 Azure DevOps 관리자 보안 그룹 및 관리자 보안 그룹

  • Azure DevOps Server 데이터베이스를 호스트하는 SQL Server instance 실행하는 서버 또는 서버의 sysadmin 그룹입니다.

자세한 내용은 Azure DevOps Server 대한 권한 참조를 참조하세요.

설명

프로젝트 컬렉션을 이동 또는 분할하거나, 데이터를 복원하거나, 배포 구성을 변경할 때 이 명령을 사용할 수 있습니다.

이러한 데이터베이스의 다시 빌드를 대화형으로 시작하려면 Azure DevOps용 관리 콘솔에서 보고 노드를 사용할 수 있습니다. 자세한 내용은 Azure DevOps 관리 콘솔 열기를 참조하세요.

예제

다음 예제에서는 Azure DevOps Server 배포를 위해 Analysis Services 데이터베이스를 다시 빌드하는 방법을 보여 줍니다.

TfsConfig rebuildWarehouse /analysisServices

    TFSConfig - Team Foundation Server Configuration Tool
    Copyright � Microsoft Corporation. All rights reserved.
    The Analysis Services database was successfully rebuilt.

RegisterDB

registerDB를 사용하여 Azure DevOps Server 구성 데이터베이스를 호스트하는 서버의 이름을 업데이트합니다. 구성 데이터베이스를 새 하드웨어로 복원하거나 배포의 도메인을 변경할 때 이 명령을 사용할 수 있습니다.

TfsConfig registerDB /sqlInstance:<serverName> /databaseName:<databaseName>
옵션 Description
SQLInstance 필수 사항입니다. 기본 instance 이외의 instance 사용하려는 경우 SQL Server 실행 중인 서버의 이름과 instance 이름을 지정합니다. instance 지정하는 경우 형식ServerName\InstanceName을 사용해야 합니다.
databaseName 필수 사항입니다. 구성 데이터베이스의 이름을 지정합니다. 기본적으로 Tfs_Configuration입니다.

사전 요구 사항

registerDB 명령을 사용하려면 Azure DevOps용 애플리케이션 계층 서버에서 Azure DevOps Administrators 그룹의 구성원이어야 하며 Azure DevOps용 데이터 계층 서버에서 SQL Server sysadmin 그룹의 멤버여야 합니다. 자세한 내용은 Azure DevOps Server 대한 권한 참조를 참조하세요.

설명

이 명령을 사용하기 전에 Azure DevOps Server 데이터베이스를 백업합니다.

registerDB 명령이 성공하려면 다음 애플리케이션 풀 및 프로그램을 실행해야 합니다.

  • Azure DevOps Server 애플리케이션 풀(애플리케이션 풀)
  • ReportServer(애플리케이션 풀)
  • SQL Server Reporting Services(프로그램)

이 명령이 제대로 작동하려면 구성 데이터베이스의 정확한 이름이나 주소를 입력해야 합니다. 이 데이터베이스가 저장된 서버를 변경해야 하는 경우 Azure DevOps Server 새 위치를 가리키는지 확인해야 합니다.

예제

다음 예제에서는 Azure DevOps Server SQL Server instance 서버에 ContosoMain 있는 구성 데이터베이스로 TeamDatabases리디렉션합니다.

TfsConfig registerDB /SQLInstance:ContosoMain\TeamDatabases /databaseName:Tfs_Configuration

RemapDB

remapDBs 명령은 둘 이상의 서버에 저장되고 배포 구성을 복원, 이동 또는 변경하는 경우 Azure DevOps Server 해당 데이터베이스로 리디렉션합니다. 예를 들어 구성 데이터베이스의 별도 서버 또는 서버에서 호스트되는 경우 프로젝트 컬렉션에 대한 데이터베이스로 Azure DevOps Server 리디렉션해야 합니다. 또한 Azure DevOps Server SQL Server Analysis Services 실행 중인 서버 또는 서버로 리디렉션하거나 해당 데이터베이스가 별도의 서버에서 호스트되거나 구성 데이터베이스에서 instance 경우 SQL Server Reporting Services 합니다.

TfsConfig remapDBs /DatabaseName:ServerName;DatabaseName /SQLInstances:ServerName1,ServerName2
	[/AnalysisInstance:<serverName>] [/AnalysisDatabaseName:<databaseName>]
	[/preview] [/continue]
옵션 Description
DatabaseName 데이터베이스 자체의 이름 외에도 Azure DevOps Server 매핑할 데이터베이스를 호스트하는 서버의 이름을 지정합니다.
SQLInstances 기본 instance 이외의 instance 사용하려는 경우 instance 이름 외에 SQL Server 실행 중인 서버의 이름을 지정합니다.

둘 이상의 서버를 지정하는 경우 쉼표로 여러 쌍의 서버와 instance 이름을 구분해야 합니다.
AnalysisInstance 선택 사항입니다. SQL Server Analysis Services 호스트하는 서버 및 instance 이름을 지정합니다. Analysis Services 데이터베이스를 호스트하는 서버 및 instance 지정하려면 이 옵션을 사용합니다.
AnalysisDatabaseName 선택 사항입니다. /AnalysisInstance 옵션으로 지정한 서버에 이러한 데이터베이스가 두 개 이상 있는 경우 Azure DevOps Server 사용할 Analysis Services 데이터베이스의 이름을 지정합니다.
미리 보기 선택 사항입니다. 구성을 업데이트하기 위해 수행해야 하는 작업을 표시합니다.
continue 선택 사항입니다. 하나 이상의 데이터베이스를 찾는 동안 오류가 발생하더라도 RemapDB 명령을 계속하도록 지정합니다. /continue 옵션을 사용하는 경우 지정한 서버 또는 서버에서 데이터베이스를 찾을 수 없는 컬렉션은 서버를 사용하도록 다시 구성되고 구성 데이터베이스를 호스트하는 instance.

사전 요구 사항

remapDBs 명령을 사용하려면 Azure DevOps Administrators 보안 그룹의 구성원이자 Azure DevOps Server 사용하는 SQL Server 데이터베이스에 대한 sysadmin 보안 그룹의 구성원이어야 합니다. 자세한 내용은 Azure DevOps Server 대한 권한 참조를 참조하세요.

설명

remapDBs 명령을 사용하여 원래 설치의 서버 및 인스턴스에서 다른 서버 및 SQL Server 인스턴스를 사용하도록 Azure DevOps Server 다시 구성합니다.

예제

다음 예제에서는 Azure DevOps Server 해당 구성 데이터베이스TFS_Configuration로 리디렉션하는 방법을 보여 있습니다. 이 데이터베이스는 명명된 instance TeamDatabases에서 ContosoMain 호스트됩니다. 프로젝트 컬렉션 데이터베이스는 의 기본 instance 모두 ContosoMain\TeamDatabasesContoso2저장됩니다.

TfsConfig remapDBs /DatabaseName:ContosoMain\TeamDatabases;TFS_Configuration
	/SQLInstances:ContosoMain\TeamDatabases,Contoso2

RepairJobQueue

repairJobQueue 명령을 사용하여 배포 및 컬렉션 호스트에 대한 실행이 중지된 예약된 작업을 수정합니다.

TfsConfig repairJobQueue

사전 요구 사항

repairJobQueue 명령을 사용하려면 TfsConfig를 실행하는 컴퓨터에서 로컬 관리자 그룹의 구성원이어야 합니다. 또한 Azure DevOps Server 배포에서 사용하는 모든 SQL Server 인스턴스에 대한 sysadmin 보안 역할의 멤버여야 합니다.

설명

예약된 작업이 실행되고 있지 않은 경우 일반적으로 repairJobQueue 명령을 사용합니다.
명령은 인수를 사용하지 않으며 Azure DevOps Server 배포를 구성해야 합니다.

예제

TfsConfig repairJobQueue

설정

설정 명령을 사용하여 알림 인터페이스 및 Azure DevOps Server 서버 주소에 사용되는 URL(Uniform Resource Locator)에 대한 변경 내용을 자동화할 수 있습니다. 기본적으로 알림 인터페이스 URL 및 서버 URL은 Azure DevOps Server 일치하지만 별도의 URL을 구성할 수 있습니다. 예를 들어 Azure DevOps Server 생성하는 자동 전자 메일에 다른 URL을 사용할 수 있습니다. 새 URL을 사용하도록 모든 서버를 업데이트하려면 응용 프로그램 계층에서 이 도구를 실행해야 합니다.

이러한 URL을 대화형으로 변경하거나 현재 설정을 보려면 Azure DevOps용 관리 콘솔을 사용할 수 있습니다. 관리 작업 빠른 참조를 참조하세요.

TfsConfig settings [/publicURL:URL]
옵션 Description
publicUrl Azure DevOps에 대한 애플리케이션 계층 서버의 URL을 지정합니다. 이 값은 Azure DevOps의 구성 데이터베이스에 저장됩니다.

사전 요구 사항

애플리케이션 계층 서버의 Azure DevOps Administrators 보안 그룹 및 Administrators 그룹의 구성원이어야 합니다. 자세한 내용은 Azure DevOps Server 대한 관리자 권한 설정을 참조하세요.

설명

설정 명령은 Azure DevOps Server 배포에서 서버 간 통신에 대한 연결 정보를 변경합니다. /publicURL에 지정된 URL은 배포 내의 모든 서버에서 사용할 수 있어야 합니다.

예제

다음 예제에서는 NotificationURL 값을 로 http://contoso.example.com/tfs 변경하고 ServerURL 값을 로 변경합니다 http://contoso.example.com:8080/tfs.

TfsConfig settings /publicURL:http://contoso.example.com:8080/tfs

설치 프로그램

설치 명령을 사용하여 명령을 실행하는 컴퓨터에서 현재 구성된 기능을 제거합니다.

TfsConfig setup /uninstall:<feature[,feature,...]>

옵션

설명

/uninstall

명령을 실행하는 컴퓨터에서 제거할 하나 이상의 기능을 지정합니다. 옵션으로는 All, ApplicationTier, Search 및 VersionControlProxy가 있습니다.

사전 요구 사항

설치 명령을 사용하려면 Azure DevOps Administrators 보안 그룹의 구성원이어야 합니다.

예제

다음 예제에서는 현재 컴퓨터에서 모든 Azure DevOps Server 기능을 제거합니다.

TfsConfig setup /uninstall:All

다음 예제에서는 애플리케이션 계층을 제거하고 현재 컴퓨터에서 기능을 빌드합니다.

TfsConfig setup /uninstall:ApplicationTier 

TCM

최신 버전의 Azure DevOps Server 업그레이드할 때 시스템은 테스트 계획 및 제품군을 포함하여 테스트 관리 구성 요소를 자동으로 업그레이드하려고 시도합니다.

자동 마이그레이션이 실패하는 경우 TCM 명령을 사용하여 테스트 계획 및 테스트 도구 모음을 해당 WIT(작업 항목 유형)로 수동으로 업그레이드합니다.

TFSConfig TCM /upgradeTestPlans|upgradeStatus /CollectionName:CollectionName /TeamProject:TeamProjectName

옵션

설명

/upgradeTestPlans

/upgradeStatus를 사용하지 않는 한 필요합니다.

작업 항목 기반 테스트 계획 및 테스트 도구 모음을 가리키도록 기존 테스트 계획 및 테스트 도구 모음을 변환합니다. 또한 기존 테스트 관리 데이터와 테스트 지점, 테스트 실행 및 테스트 결과와 같은 다른 기존 테스트 아티팩트 사이의 링크를 업데이트합니다.

/upgradeStatus

/upgradeTestPlans를 사용하지 않는 한 필요합니다.

지정된 프로젝트에 대한 테스트 데이터의 마이그레이션 상태 보고합니다. 지정된 프로젝트에 테스트 계획이 있는지 여부도 나타냅니다.

/CollectionName:CollectionName

필수 사항입니다. 테스트 데이터를 마이그레이션하거나 마이그레이션 상태 검사 프로젝트를 포함하는 프로젝트 컬렉션을 지정합니다.

프로젝트 컬렉션의 이름에 공백이 있는 경우 이름을 따옴표로 묶습니다(예: "Fabrikam 파이버 컬렉션").

/TeamProjectName:TeamProjectName

필수 사항입니다. 테스트 데이터를 마이그레이션하거나 마이그레이션 상태 검사 프로젝트를 지정합니다. 이 프로젝트는 /collectionName 매개 변수를 사용하여 지정한 컬렉션에서 정의해야 합니다.

프로젝트 이름에 공백이 있는 경우 이름을 따옴표로 묶습니다(예: "내 프로젝트").

사전 요구 사항

사용자는 Team Foundation Administrators 보안 그룹의 멤버이고 응용 프로그램 계층 서버의 관리자여야 합니다.

Azure DevOps Server 대한 관리자 권한 설정을 참조하세요.

설명

이 명령을 사용하려면 애플리케이션 계층 서버를 최신 버전의 Azure DevOps Server 2019로 업그레이드해야 합니다.

TCM 명령을 사용하려면 먼저 테스트 계획 작업 항목 정의와 테스트 계획 범주를 프로젝트로 가져와야 합니다.

마이그레이션 및 이 명령을 사용하는 시기에 대한 자세한 내용은 테스트 관리를 지원하기 위한 수동 업데이트를 참조하세요.

TCM 명령은 개별 프로젝트에 적용됩니다. 둘 이상의 프로젝트에서 테스트 계획을 업그레이드해야 하는 경우 각 프로젝트에 대해 개별적으로 실행해야 합니다.

Azure DevOps Server 도구 디렉터리에서 TCM 명령을 실행해야 합니다. 기본적으로 해당 위치는 입니다 drive:\%programfiles%\TFS 12.0\Tools.

기존 테스트 데이터의 자동 마이그레이션이 실패하는 경우에만 TCM 명령을 사용합니다.

마이그레이션 및 이 명령을 사용해야 하는 시기에 대해 자세히 알아보려면 테스트 관리를 지원하기 위한 수동 업데이트입니다. 서버 업그레이드가 발생하기 전에 정의된 테스트 계획 또는 테스트 도구 모음에 액세스할 수 없는 경우 TFSConfig TCM upgradeStatus를 실행하여 마이그레이션의 상태 확인합니다.

개별 프로젝트에 대해 TCM 명령을 실행합니다. 둘 이상의 프로젝트를 업그레이드해야 하는 경우 각 프로젝트에 대해 차례로 실행해야 합니다.

예제

다음 예제에서는 기본 프로젝트 컬렉션(DefaultCollection)에 호스트된 Fabrikam 파이버 프로젝트에서 테스트 계획 업그레이드의 상태 검사 방법을 보여 집니다.

tfsconfig tcm /upgradeStatus /CollectionName:DefaultCollection /TeamProject:"Fabrikam Fiber"

Unattend

명령 가용성: Azure DevOps Server 2019

무인 명령은 Azure DevOps Server 및 구성 프로세스에 익숙하고 다른 컴퓨터에 Azure DevOps Server 설치해야 하는 사용자를 위해 설계되었습니다.

예를 들어 Azure DevOps Build를 사용하는 경우 무인 명령을 사용하여 동일한 구성 파일을 사용하여 여러 빌드 서버를 설치할 수 있습니다.

/create 옵션을 사용하여 무인 파일을 만듭니다. 이 파일은 Azure DevOps Server 설치에 대한 모든 구성 매개 변수를 정의합니다. 다음으로 /configure 옵션을 사용하여 실제로 구성을 수행합니다.

이 프로세스를 사용하면 설치 프로세스 중에 입력을 제공하지 않고도 처음부터 끝까지 Azure DevOps Server 구성할 수 있습니다. 또한 여러 설치를 수행하는 경우 이 명령을 사용하면 여러 서버에서 정확히 동일한 구성 매개 변수를 사용할 수 있습니다.

TfsConfig unattend /create|configure /type:InstallType /unattendfile:ConfigurationFileName 
    [/inputs:Key1=Value1; Key2=Value2;...] [/verify] [/continue]
옵션 Description
create 지정한 이름과 매개 변수로 무인 파일을 만듭니다.
구성 지정한 무인 파일 및 매개 변수를 사용하여 Azure DevOps Server 구성합니다. 이 옵션에는 /type 또는 /unattendfile을 사용해야 합니다.
형식 사용할 구성 유형을 지정합니다. /configure를 사용하는 경우 /type 또는 /unattendfile 중 하나는 필수이지만 두 항목을 모두 사용할 수는 없습니다.
unattendfile 초기 매개 변수가 /create인지 /configure인지에 따라 만들거나 사용할 무인 파일을 지정합니다. /configure를 사용하는 경우 /unattendfile 또는 /type 중 하나는 필수입니다.
입력 선택 사항입니다. /create를 사용하는 경우 무인 파일을 만들 때 사용할 설정과 값을 지정합니다. /configure를 사용하는 경우 무인 파일과 함께 사용할 추가 설정과 값을 지정합니다.

/inputs를 사용하는 대신 일반 텍스트 편집기에서 무인 파일을 수동으로 편집할 수도 있습니다. /inputs 매개 변수를 사용하여 비밀 값을 설정할 수 없으므로 ServiceAccountPassword 또는 PersonalAccessToken과 같은 특정 입력 형식에 필요합니다.
verify 선택 사항입니다. 무인 파일, 입력 및 구성 형식만을 기반으로 확인 검사를 완료하는 구성 실행을 지정합니다. 이 방법은 전체 구성을 수행하는 대신 사용됩니다.
continue 선택 사항입니다. 확인 검사의 경고와 관계없이 /create 또는 /configure가 계속 실행되도록 지정합니다.
InstallType Description
NewServerBasic Azure DevOps Server 위한 필수 개발 서비스를 구성합니다. 여기에는 소스 제어, 작업 항목, 빌드 및 선택적으로 Search 포함됩니다.
NewServerAdvanced 필수 개발 서비스를 구성하고 Reporting Services 통합의 선택적 구성을 허용합니다.
Upgrade 지원되는 이전 릴리스에서 현재 버전으로 Azure DevOps Server 업그레이드합니다.
PreProductionUpgrade 사전 프로덕션 환경에서 기존 Azure DevOps Server 배포에서 업그레이드를 테스트합니다. 일반적으로 프로덕션 백업에서 복원된 데이터베이스를 사용하여 수행됩니다. 이 시나리오에는 새 배포가 프로덕션 배포를 방해하지 않도록 하는 추가 단계가 포함되어 있습니다.
ApplicationTierOnlyBasic 제공된 구성 데이터베이스의 기존 설정을 사용하여 새 애플리케이션 계층을 구성합니다. 이 옵션을 사용하면 기존 설정을 사용하여 새 애플리케이션 계층을 빠르게 시작하고 실행할 수 있습니다. 기존 설정을 변경하는 기능을 원하는 경우 대신 Advanced ApplicationTierOnlyAdvanced 형식을 사용합니다.
ApplicationTierOnlyAdvanced 모든 설정을 완전히 제어하여 새 애플리케이션 계층을 구성합니다. 설정은 기본적으로 제공된 구성 데이터베이스의 기존 값으로 설정됩니다. 모든 기존 설정을 유지하려면 ApplicationTierOnlyBasic 형식을 대신 사용합니다.
복제 기존 배포의 복제본인 새 Azure DevOps Server 배포를 구성합니다. 일반적으로 프로덕션 백업에서 복원된 데이터베이스를 사용하여 구성 변경, 확장 및 기타 수정 사항을 테스트할 수 있는 환경을 만듭니다. 이 시나리오에는 새 배포가 프로덕션 배포를 방해하지 않도록 하는 추가 단계가 포함되어 있습니다.
Proxy (프록시) 버전 제어 프록시 서비스를 구성합니다.

사전 요구 사항

  • 소프트웨어를 설치할 컴퓨터의 Administrators 그룹 멤버여야 합니다.

  • 설치 유형에 따라서는 추가 관리자 권한도 필요할 수 있습니다.

예를 들어 무인 명령을 사용하여 Azure DevOps Server 를 설치하는 경우 Azure DevOps Server 지원하는 SQL Server instance sysadmin 그룹의 멤버여야 합니다. 자세한 내용은 Azure DevOps Server 서버 수준 관리자 추가의 Q & A 섹션을 참조하세요.

설명

무인 명령을 사용하여 Azure DevOps Server 구성하려면 먼저 배포의 일부로 사용할 서비스 계정을 만들어야 합니다. 선택한 설치 유형에 맞는 필수 구성 요소 소프트웨어도 설치해야 합니다. 여기에는 Azure DevOps Server 자체가 포함됩니다. Azure DevOps Server 설치해야 하지만 무인 명령이 이 작업을 수행하므로 구성할 필요가 없습니다.

무인 명령은 Azure DevOps Server 구성 요소를 구성합니다. 초기 소프트웨어 설치는 수행하지 않습니다. 이 명령은 컴퓨터에 비트가 있으면 사용자가 지정하는 내용에 따라 소프트웨어를 구성합니다.

예제

다음 예제에서는 Azure DevOps Server 기본 설치를 위한 무인 파일을 만드는 방법을 보여 줍니다.

TfsConfig unattend /create /type:basic /unattendfile:configTFSBasic.ini

이 예에서는 명령과 같은 디렉터리에 무인 파일을 만듭니다. 명령의 일부분으로 로그 파일이 작성되며 명령 실행의 일부분으로 명령에서 파일 위치가 반환됩니다.

다음 예제에서는 구성 중에 GVFS와 함께 사용할 Git 리포지토리를 지정하는 방법을 보여 줍니다.

TfsConfig unattend /configure /type:proxy /inputs:ProjectCollectionUrl=http://FabrikamFiberTFS:8080/tfs/defaultcollection;GvfsProjectName=Fabrikam-Fiber-Git;GvfsRepositoryName=TestGit

다음 예제에서는 Azure DevOps 프록시 서버 구성에 대한 무인 파일을 만드는 방법을 보여 줍니다.

중요

이 예제에서는 관리자가 인증을 위해 개인용 액세스 토큰을 사용하려는 경우 파일을 수동으로 편집하여 개인용 액세스 토큰 값을 지정해야 합니다. 다음과 같이 PersonalAccessToken=PersonalAccessTokenValue만든 무인 파일에서 개인용 액세스 토큰에 대한 줄을 추가하여 이 작업을 수행할 수 있습니다.

TfsConfig unattend /create /type:proxy "/inputs:ProjectCollectionUrl=http://FabrikamFiberTFS:8080/tfs/defaultcollection" /unattendFile:c:\unattend.txt

다음 예제에서는 빌드 서비스 계정으로 를 사용하여 FabrikamFiber\BuildSVC 서버에서 Azure DevOps Server Build 구성을 위한 무인 파일을 만든 다음, 해당 무인 파일을 사용하여 Azure DevOps Server 빌드를 구성하는 방법을 보여 줍니다.

중요

이 예에서 관리자는 무인 파일을 만든 후 파일을 수동으로 편집해 빌드 서비스 계정의 암호를 지정합니다. 을 사용하여 ServiceAccountPassword=Password; 암호를 입력으로 추가해도 파일에 암호 정보가 추가되지 않습니다.

TfsConfig unattend /create /type:build /unattendfile:configTFSBuild.ini
    /inputs:IsServiceAccountBuiltIn=false;ServiceAccountName=FabrikamFiber\\BuildSVCTFSConfig
TfsConfig unattend /configure /unattendfile:configTFSBuild.ini

첫 번째 명령은 다음 정보를 반환합니다.

Microsoft (R) TfsConfig - Team Foundation Server Configuration Tool
Copyright (c) Microsoft Corporation. All rights reserved.

Command: unattend
Logging sent to file C:\ProgramData\Microsoft\Team Foundation\Server Configuration\Logs\TFS_Build Configuration_0512_203133.log

두 번째 명령은 Azure DevOps Build가 구성된 FabrikamFiberTFS 서버 이름과 컨트롤러 DefaultCollection와 연결된 프로젝트 컬렉션을 포함하여 다음 정보를 반환합니다.

    Microsoft (R) TfsConfig - Team Foundation Server Configuration Tool
    Copyright (c) Microsoft Corporation. All rights reserved.

    Command: unattend

    ---------------------------------------------
            Inputs:
    ---------------------------------------------

    Feedback
            Send Feedback: True

    Build Resources
            Configuration Type: create
            Agent Count: 1
            New Controller Name: FabrikamFiberTFS - Controller
            Clean Up Resources: False

    Project Collection
            Collection URL: http://FabrikamFiberTFS:8080/tfs/defaultcollection

    Windows Service
            Service Account: FabrikamFiber\BuildSVC
            Service Password: ********

    Advanced Settings *
            Port: 9191

    ---------------------------------------------
            Running Readiness Checks
    ---------------------------------------------

    [1/2] System Verifications
    [2/2] Build Service Verifications

    ---------------------------------------------
            Configuring
    ---------------------------------------------

            root
    [1/4] Install Team Foundation Build Service
            Installing Windows services ...
            Adding service account to groups ...
            Setting ACL on a windows service
    [2/4] Enable Event Logging
            Adding event log sources ...
            Token replace a config file
            RegisterBuildEtwProvider
            Configuring ETW event sources ...
    [3/4] Register with Team Foundation Server
            Registering the build service
    [4/4] Start Team Foundation Build Service
            StartBuildHost
            Starting Windows services ...
            Marking feature configured status
    [Info] [Register with Team Foundation Server] Firewall exception added for port
    9191

    TeamBuild completed successfully.
    Logging sent to file C:\ProgramData\Microsoft\Team Foundation\Server Configuration\Logs\TFS_Build Configuration_0512_203322.log

ZipLogs

ziplogs 명령은 로그를 수집하고 에 ProgramData\Microsoft\Azure DevOps\Server Configurationzip을 삭제하도록 설계되었습니다.

TfsConfig zipLogs

TfsConfig zipLogs