다음을 통해 공유


잠금 명령(Team Foundation 버전 제어)

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

Visual Studio 2019 | Visual Studio 2022

TFVC(Team Foundation Version Control) lock 명령은 파일 또는 폴더를 잠그거나 잠금을 해제합니다. 이 명령은 다른 작업 영역으로 편집할 항목을 체크 아웃하거나 다른 작업 영역의 항목에 대한 보류 중인 변경 내용을 체크 인할 수 있는 사용자의 권한을 거부하거나 복원합니다.

필수 구성 요소

lock 명령을 사용하려면 잠금 권한을 허용으로 설정합니다. 다른 사용자의 변경 내용 잠금 해제 사용 권한 집합이 해당 사용자의 작업 영역에 대한 쓰기 권한이 없는 경우 다른 사용자가 보유한 잠금을 제거할 있어야 합니다. 자세한 내용은 기본 TFVC 권한참조하세요.

통사론

tf lock itemspec /lock:(none|checkout|checkin) 
[/workspace:workspacename] [/recursive] [/login:username,[password]] [/collection:TeamProjectCollectionUrl] 

매개 변수

인수

인수

설명

<itemspec>

잠그거나 잠금 해제할 파일 또는 폴더를 식별합니다. TFVC가 itemspec 구문 분석하여 범위 내에 있는 항목을 확인하는 방법에 대한 자세한 내용은 사용 옵션을 참조하여 명령 함수가방법을 수정합니다.

메모

둘 이상의 itemspec 인수를 지정할 수 있습니다.

<workspacename>

/workspace 옵션에 대해 사용자가 제공한 값입니다.

<username>

/login 옵션에 값을 제공합니다. username 값을 DOMAIN\username 또는 username지정할 수 있습니다.

<TeamProjectCollectionUrl>

잠그거나 잠금 해제하려는 파일 또는 폴더가 포함된 프로젝트 컬렉션의 URL입니다(예: http://myserver:8080/tfs/DefaultCollection).

옵션

옵션

설명

/lock

잠금 유형을 지정하거나 항목에서 잠금을 제거합니다. 자세한 내용은 잠금 유형 이해참조하세요.

잠금 옵션:

  • None: 항목에서 잠금을 제거합니다.

  • Checkin: 모든 작업 영역에서 항목을 체크 아웃하고 편집할 수 있지만 사용자가 체크 인 잠금을 명시적으로 해제할 때까지 지정된 /workspace 외부의 항목에 대한 변경 내용을 체크 인할 수 없습니다. 지정된 항목이 다른 작업 영역에서 잠겨 있으면 잠금 작업이 실패합니다.

  • Checkout: 잠금을 명시적으로 해제할 때까지 사용자가 지정된 항목을 체크 인하거나 체크 아웃하지 못하도록 합니다. 사용자가 지정된 항목 중 하나를 잠근 경우 또는 항목 중 하나에 대해 보류 중인 변경 내용이 있는 경우 잠금 작업이 실패합니다.

/workspace

잠금을 적용할 다른 작업 영역의 이름을 지정합니다. 기본적으로 잠금은 현재 있는 작업 영역에 적용됩니다.

/login

Azure DevOps를 사용하여 사용자를 인증할 사용자 이름과 암호를 지정합니다.

/collection

프로젝트 컬렉션을 지정합니다.

발언

병합 충돌을 해결할 필요 없이 보류 중인 변경 내용을 체크 인할 수 있도록 잠금 명령을 사용하여 항목의 TFVC 서버 버전을 일시적으로 중지할 수 있습니다. TFVC 서버의 항목에 대한 액세스를 영구적으로 방지하려면 권한 명령 대신 사용해야 합니다.

메모

팀 동료에게 예의로, 항목에 잠금을 적용할 때 알리고, 이 작업을 수행하는 이유를 설명하고, 가능한 경우 잠금을 제거할 계획을 세울 시기를 예측합니다.

tf 명령줄 유틸리티를 사용하는 방법에 대한 자세한 내용은 Team Foundation 버전 제어 명령 사용을 참조하세요.

항목을 잠그는 방법

lock 명령을 사용하거나 다음을 비롯한 여러 다른 tf 명령줄 유틸리티 명령의 커미션 중에 lock 옵션을 지정하여 항목을 잠글 수 있습니다.

addbranch경우 새 항목이 만들어질 네임스페이스에 잠금이 배치됩니다. rename 있는 잠금은 이전 네임스페이스와 새 네임스페이스에 모두 적용됩니다. 자세한 내용은 폴더 또는 파일잠금 및 잠금 해제 참조하세요.

잠금 유형

TFVC는 checkincheckout두 가지 유형의 잠금을 제공합니다.

체크 인 잠금은 체크 아웃 잠금보다 덜 제한적입니다. 체크 인 잠금을 적용하면 사용자는 다른 작업 영역의 항목을 계속 로컬로 변경할 수 있습니다. 작업 영역에서 체크 인 잠금을 명시적으로 제거할 때까지 변경 내용을 체크 인할 수 없습니다.

체크 아웃 잠금은 체크 인 잠금보다 더 제한적입니다. 버전 제어 파일 또는 폴더에 체크 아웃 잠금을 적용하면 사용자는 편집할 항목을 체크 아웃하거나 기존 보류 중인 변경 내용을 체크 인할 수 없습니다. 현재 항목에 보류 중인 변경 내용이 있는 경우 체크 아웃 잠금을 가져올 수 없습니다.

체크 아웃 잠금을 적용하는 시기 및 체크 인 잠금을 적용하는 시기에 대한 자세한 내용은 잠금 유형 이해참조하세요.

잠금 작동 방식

파일을 잠글 때 체크 아웃한 경우 해당 상태가 새 잠금 형식을 포함하도록 수정됩니다. 파일을 체크 아웃하지 않으면 보류 중인 작업 영역 변경 집합에 잠금 변경 내용이 추가됩니다. checkout 명령과 달리 lock 파일을 자동으로 편집할 수 없게 만듭니다.

폴더에 대한 잠금은 암시적으로 재귀적입니다. 폴더를 잠그는 경우 체크 인 잠금이 있는 폴더의 파일에 더 제한적인 체크 아웃 잠금을 적용하려는 경우가 아니면 폴더에 포함된 파일을 잠글 필요가 없습니다.

항목 잠금 해제

none 옵션을 사용하여 잠긴 항목의 잠금을 해제할 수 있습니다. 또한 TFVC는 작업 영역에서 보류 중인 변경 내용을 체크 인할 때 항목의 잠금을 자동으로 해제합니다.

TFVC 서버에서 잠긴 파일과 상태 명령사용하여 파일이 잠긴 파일을 확인할 수 있습니다.

예제

다음 예제에서는 다른 사용자가 314.cs체크 아웃하지 못하도록 합니다.

c:\projects>tf lock /lock:checkout 314.cs

다음 예제에서는 다른 사용자가 1256.cs 대한 변경 내용을 체크 인하지 못하도록 하지만 작업 영역에서 체크 아웃할 수 있도록 합니다.

c:\projects>tf lock /lock:checkin 1256.cs

다음 예제에서는 다른 사용자가 TFVC 서버의 $/src 폴더에 있는 항목에 대한 변경 보류를 방지합니다.

c:\projects>tf lock /lock:checkout $/src

다음 예제에서는 $/src TFVC 서버 폴더의 모든 파일을 잠금 해제하고 다른 사용자의 체크 아웃 및 체크 인에 사용할 수 있도록 합니다.

c:\projects>tf lock /lock:none $/src