다음을 통해 공유


TFVC 리포지토리 빌드

Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019

Important

TFVC는 클래식 파이프라인에서만 지원되며 YAML을 지원하지 않습니다.

빌드할 리포지토리 선택

TFVC 리포지토리를 사용하는 파이프라인을 편집하는 동안 다음과 같은 옵션이 있습니다.

  • 정리
  • 로컬 경로 지정
  • 레이블 원본

저장소 이름

TFVC 리포지토리의 이름입니다.

매핑(작업 영역)

빌드 파이프라인에 필요한 폴더만 Map형식 값에 포함합니다. 매핑된 폴더의 하위 폴더에 빌드 파이프라인에 필요하지 않은 파일이 포함되어 있으면 Cloak형식 값으로 매핑합니다.

빌드 파이프라인에 필요한 파일이 포함된 모든 폴더를 매핑 해야 합니다. 예를 들어 다른 프로젝트를 추가하는 경우 작업 영역에 다른 매핑을 추가해야 할 수 있습니다.

필요하지 않은 폴더를 은폐 합니다. 기본적으로 프로젝트의 루트 폴더는 작업 영역에 매핑됩니다. 이 구성으로 인해 빌드 에이전트는 프로젝트의 버전 제어 폴더에 있는 모든 파일을 다운로드합니다. 이 폴더에 많은 데이터가 포함된 경우 빌드는 빌드 시스템 리소스를 낭비하고 필요하지 않은 대량의 데이터를 다운로드하여 빌드 파이프라인의 속도를 저하시킬 수 있습니다.

프로젝트를 제거할 때 작업 영역에서 제거할 수 있는 매핑을 찾습니다.

CI 빌드인 경우 대부분의 경우 이러한 매핑이 트리거 탭에서 CI 트리거의 필터 설정과 일치하는지 확인해야 합니다.

TFVC 작업 영역을 최적화하는 방법에 대한 자세한 내용은 작업 영역 최적화를 참조하세요.

에이전트에서 로컬 리포지토리 정리

빌드를 실행하기 전에 자체 호스팅 에이전트의 작업 디렉터리를 클린 다양한 형식을 수행할 수 있습니다.

일반적으로 자체 호스팅 에이전트의 성능을 향상시키려면 리포지토리를 클린 않습니다. 이 경우 최상의 성능을 얻으려면 빌드하는 데 사용하는 작업 또는 도구의 정리 옵션을 사용하지 않도록 설정하여 증분 방식으로 빌드하고 있는지 확인합니다.

리포지토리를 클린 필요한 경우(예: 이전 빌드의 잔여 파일로 인한 문제를 방지하기 위해) 옵션은 다음과 같습니다.

참고 항목

이 경우 매번 새 에이전트를 받기 때문에 Microsoft 호스팅 에이전트 를 사용하는 경우에는 정리와 관련이 없습니다.

리포지토리를 클린 true를 선택한 다음, 다음 옵션 중 하나를 선택합니다.

  • 원본: 빌드 파이프라인은 변경 내용의 실행 취소를 수행하고 아래$(Build.SourcesDirectory)의 현재 작업 영역을 채점합니다.

  • 원본 및 출력 디렉터리: 위의 원본 옵션과 동일한 작업, 더하기: 삭제하고 다시 만듭니다$(Build.BinariesDirectory).

  • 원본 디렉터리: 삭제하고 다시 만듭니다 $(Build.SourcesDirectory).

  • 모든 빌드 디렉터리: 삭제하고 다시 만듭니다 $(Agent.BuildDirectory).

CI 트리거

코드에서 누군가가 검사 때마다 빌드를 실행하려면 트리거 탭에서 연속 통합 사용을 선택하여 이 트리거를 사용하도록 설정합니다.

CI 트리거.

일괄 처리 변경 내용

변경 내용을 자주 업로드하는 팀 구성원이 많고 실행 중인 빌드 수를 줄이려면 이 검사 상자를 선택합니다. 이 옵션을 선택하면 빌드가 실행될 때 시스템은 빌드가 완료될 때까지 기다린 다음 아직 빌드되지 않은 모든 변경 내용의 다른 빌드를 큐에 대기합니다.

변경 내용을 일괄 처리하고 함께 빌드할 수 있습니다.

패스 필터

포함 및 제외할 버전 제어 경로를 선택합니다. 대부분의 경우 이러한 필터가 TFVC 매핑과 일치하는지 확인해야 합니다. 경로 필터를 사용하여 빌드를 트리거하려는 파일 집합을 줄일 수 있습니다.

:

  • 경로는 항상 작업 영역의 루트를 기준으로 지정됩니다.
  • 경로 필터를 설정하지 않으면 작업 영역의 루트 폴더가 기본적으로 암시적으로 포함됩니다.
  • 경로를 제외하는 경우 더 깊은 폴더로 한정하지 않으면 경로를 포함할 수 없습니다. 예를 들어 /tools를 제외하면 /tools/trigger-runs-on-these를 포함할 수 있습니다.
  • 경로 필터의 순서는 중요하지 않습니다.

제어된 체크 인

제어된 체크 인을 사용하여 호환성이 손상되는 변경으로부터 보호할 수 있습니다.

기본적으로 필터에 작업 영역 매핑 사용 이 선택됩니다. 원본 매핑에 지정된 경로에서 변경 내용을 체크 인할 때마다 빌드가 트리거됩니다.

그렇지 않으면 이 검사 상자를 지우고 트리거의 경로를 지정할 수 있습니다.

개발자에게 미치는 영향

개발자가 검사 시도하면 변경 내용을 빌드하라는 메시지가 표시됩니다.

제어된 검사 프롬프트

그런 다음 시스템은 선반을 만들고 빌드합니다.

참고 항목

릴리스되지 않은 파이프라인 설정에 대한 현재 프로젝트로 The shelveset _Build_95;Build\6bc8a077-3f27-4936-82e6-415fbd53ba07 could not be found for check-in작업 권한 부여 제한 범위를 검사 같은 오류가 표시되면 사용하도록 설정되지 않았는지 확인합니다.

제어된 검사 환경에 대한 자세한 내용은 제어된 검사 빌드 파이프라인으로 제어되는 폴더에 대한 체크 인을 참조하세요.

CI 빌드를 실행하는 옵션

기본적으로 CI 빌드는 제어된 검사 프로세스가 완료되고 변경 내용이 검사 후에 실행되지 않습니다.

그러나 제어된 검사 후 CI 빌드를 실행하려면 커밋된 변경 검사 상자에 대한 CI 트리거 실행을 선택합니다. 이렇게 하면 빌드 파이프라인이 변경 집합 설명에 ***NO_CI***를 추가하지 않습니다. 결과적으로 검사 영향을 받는 CI 빌드가 실행됩니다.

알아야 할 몇 가지 다른 사항

  • 트리거에 포함된 폴더가 작업 영역 매핑에도 포함되어 있는지 확인합니다.
  • Microsoft 호스팅 에이전트 또는 자체 호스팅 에이전트에서 제어된 빌드를 실행할 수 있습니다.

FAQ

파이프라인을 실행할 때 다음 오류가 발생합니다.

The shelveset <xyz> could not be found for check-in

  • 작업 권한 부여 범위가 컬렉션으로 설정되어 있나요? TFVC 리포지토리는 일반적으로 컬렉션의 프로젝트에 분산됩니다. 범위가 전체 컬렉션인 경우에만 액세스할 수 있는 폴더를 읽거나 쓸 수 있습니다. 이 설정은 조직 설정 또는 파이프라인 탭의 프로젝트 설정에서 설정할 수 있습니다 .

파이프라인을 실행할 때 다음 오류가 발생합니다.

The underlying connection was closed: An unexpected error occurred on a receive. ##[error]Exit code 100 returned from process: file name 'tf', arguments 'vc workspace /new /location:local /permission:Public

  • 이 오류는 일반적으로 서비스에 기술적인 문제가 발생할 때 발생하는 일시적인 오류입니다. 파이프라인을 다시 실행하세요.

그을린 것이란?

Scorch는 서버 및 로컬 디스크의 소스 제어가 동일한지 확인하는 TFVC 전동 도구입니다. Microsoft Visual Studio Team Foundation Server 2015 Power Tools를 참조 하세요.