태터데스크 관리자

도움말
닫기
적용하기   첫페이지 만들기

태터데스크 메시지

저장하였습니다.

VS 2013 ALM/TFS 20132014.01.03 17:10

TFS 버전 제어 기능 중에 레이블(label)이라는게 있습니다. 흔히 '라벨'이라 부르는 것이지요.

이 기능은 소스 코드의 베이스라인(또는 스냅숏)을 설정하는데 활용됩니다.

예를 들어, 2014년 1월 3일 배포한 DLL 및 EXE를 빌드하는데 사용된 소스 코드들에 대해 레이블을 적용해 두면, 향후에 레이블을 이용하여 이 소스 코드들을 가져다가 버그를 수정하거나 새 기능을 추가하는데 편리하죠.

 

레이블은 주로 폴더에 대해 적용하게 되는데, 레이블을 적용하기 위해서는 해당 폴더에 대한 레이블 권한이 필요합니다.

그런데 레이블 권한이 적용되는 것이 우리가 일반적으로 생각하는 것과는 차이가 있습니다.

어떤 차이가 있는지 아래의 예로 설명을 해보겠습니다.

 

다음과 같은 폴더 구조가 있다고 가정해 보겠습니다.

$/MyTeamProject

/MySource

/MySolution1

/MySolution2

 

그리고 A라는 개발자가 있다고 가정해 보죠.

자, 이제 A에게 MySolution2 폴더에 대해서는 레이블 적용을 할 수 없게 하고, MySolution1 폴더에 대해서 레이블을 적용할 수 있게 하고 싶습니다.

어떻게 하면 될까요?

 

직관적으로 생각을 할 때는 MySolution1 폴더에서 A에게 레이블 권한을 부여하기만 하면 될 것 같은데요.

하지만 여기서 우리가 일반적으로 생각하는 것과의 차이가 있습니다.

 

만약 위와 같이 레이블 권한을 부여한 다음에 A가 MySoluction1 폴더에 대해 레이블을 적용하려고 하면 다음과 같은 오류 메시지가 표시됩니다.

 

루트 폴더인 $/MyTeamProject에 대해 레이블 권한이 필요하다는 메시지입니다.

레이블을 MySolution1 폴더에 적용하려고 하는데, 루트 폴더에 대한 레이블 권한이 없다는 것이지요.

 

한 가지 더 재밌는 사실이 있습니다.

만약 A에게 MySolution1 폴더에 대해서만 읽기/쓰기 권한을 부여했을 경우 즉, 그 외 다른 폴더에 대해서는 읽기/쓰기 권한이 없게 했을 경우인데요.

A에게 루트 폴더($/MyTeamProject)에 대한 레이블 권한을 부여하여 MySolution1 폴더에 레이블을 적용했다 하더라도 루트 폴더에 '읽기' 권한이 없으면 레이블을 찾을 수 없다는 것입니다.

레이블 찾기를 하면 아래와 같은 메시지가 표시됩니다.

 

따라서 특정 개발자에게 특정 폴더에 대해서만 레이블을 적용하고 나중에 그 레이블을 찾을 수 있게 하고 싶더라도 루트 폴더에 대한 레이블읽기 권한을 허용해야 한다는 것입니다.

 

왜 TFS가 이와 같이 특정 폴더에 대해 레이블을 적용하고자 할 때도 루트 폴더에 대한 레이블 권한을 요구하는지, 그리고 레이블을 찾고자 할 때도 루트 폴더에 대한 읽기 권한을 요구하는지 아직은 잘 모르겠습니다.

어떤 이유가 있을 수도 있고 아니면 버그일 수도 있겠죠.

어찌됐건 폴더 별로 개발자에 대한 레이블 권한을 다르게 관리하고자 할 때는 이와 같은 내용을 참고하셔서 적용하셔야 합니다.

 

감사합니다.

webmars.

 

 

Posted by webmars