Share via


Lock 명령

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

필요한 권한

lock 명령을 사용하려면 잠금 권한이 허용으로 설정되어 있어야 합니다. 다른 사용자의 작업 영역에 대한 쓰기 권한이 없을 경우 다른 사용자가 설정한 잠금을 해제하려면 다른 사용자의 변경 내용 잠금 해제 권한이 허용으로 설정되어 있어야 합니다. 자세한 내용은 Team Foundation Server 권한을 참조하십시오.

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

매개 변수

인수

설명

itemspec

잠그거나 잠금을 해제할 파일이나 폴더를 식별합니다. Team Foundation에서 itemspecs를 구문 분석하여 범위 내에 있는 항목을 결정하는 자세한 방법은 명령줄 옵션을 참조하십시오.

참고참고
Itemspec 인수를 두 개 이상 지정할 수 있습니다.

workspacename

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

username

/login 옵션에 값을 제공합니다. 사용자 이름 값을 DOMAIN\UserName 또는 UserName으로 지정할 수 있습니다.

TeamProjectCollectionUrl

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

Option

설명

/lock

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

잠금 옵션

  • 없음

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

  • Checkin

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

  • Checkout

    잠금을 명시적으로 해제할 때까지 다른 사용자는 지정한 항목을 체크 인 또는 체크 아웃할 수 없습니다. 다른 사용자가 지정한 항목 중 하나를 잠근 경우나 항목에 대해 보류 중인 변경 내용이 있는 경우 잠금 작업이 실패합니다.

/workspace

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

/login

Visual Studio Team Foundation Server에서 사용자를 인증할 사용자 이름과 암호를 지정합니다.

/collection

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

설명

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

참고

팀 동료에게 항목에 잠금을 적용하는 시기와 이유, 잠금을 제거할 시기에 대해 알려 주는 것이 좋습니다.

tf 명령줄 유틸리티를 검색하는 방법에 대한 자세한 내용은 Tf 명령줄 유틸리티 명령을 참조하십시오.

항목을 잠그는 방법

다음을 포함하는 tf 명령줄 유틸리티의 여러 다른 명령을 수행하는 동안 lock 명령을 사용하거나 잠금 옵션을 지정하여 항목을 잠글 수 있습니다.

add 및 branch의 경우 새 항목이 만들어지는 네임스페이스에 잠금이 배치됩니다. rename과 함께 배치된 잠금은 이전 및 새 네임스페이스에 모두 적용됩니다. 자세한 내용은 폴더 또는 파일 잠금 및 잠금 해제를 참조하십시오.

잠금 형식

Team Foundation에서는 두 가지 형식의 잠금인 checkincheckout이 제공됩니다.

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

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

체크 아웃 잠금을 적용하는 시기와 체크 인 잠금을 적용하는 시기에 대한 자세한 내용은 잠금 형식 이해를 참조하십시오.

잠금 작동 방법

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

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

항목 잠금 해제

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

Status 명령을 사용하여 Team Foundation 버전 제어 서버에서 잠겨져 있는 파일과 파일을 잠근 사람을 확인할 수 있습니다.

예제

다음 예제에서는 다른 사용자가 314.cs를 체크 아웃할 수 없게 합니다.

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

다음 예제에서는 다른 사용자가 1256.cs에 대한 변경 내용을 체크 인할 수 없지만 자신의 작업 영역에서 체크 인할 수 있게 합니다.

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

다음 예제에서는 Team Foundation 버전 제어 서버의 src/ 폴더에 있는 모든 항목에 대한 변경 내용을 다른 사용자가 보류할 수 없게 합니다.

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

다음 예제에서는 src/ Team Foundation 버전 제어 서버 폴더에 있는 모든 파일의 잠금을 해제하여 다른 사용자가 체크 아웃 및 체크 인할 수 있게 만듭니다.

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

참고 항목

참조

명령줄 구문(버전 제어)

Checkout 및 Edit 명령

Status 명령

개념

잠금 형식 이해

팀 프로젝트에 사용할 수 있도록 작업 영역 만들기

기타 리소스

Tf 명령줄 유틸리티 명령

버전 제어 잠금 사용