전복에 어떤 파일이 잠겨 있는지 확인하는 가장 좋은 방법은 무엇입니까?

StackOverflow https://stackoverflow.com/questions/284950

  •  08-07-2019
  •  | 
  •  

문제

나는 마침내 내 그룹이 SourcesAfe에서 Subversion으로 전환하도록했다. 불행히도, 내 관리자는 여전히 모든 단일 파일에서 독점 잠금 장치를 사용하려고합니다. 그래서 나는 모든 파일에 SVN : Needs-Lock 속성을 설정하고 속성을 유지하기 위해 사전 커밋 후크를 만들었습니다.

우리는 Linux 서버에서 전복을 실행하고 있습니다. 우리 대부분은 Windows 머신을 사용하고 일부는 Mac을 사용합니다. 우리는 다양한 SVN 클라이언트 (TortoisesVN, SmartSVN, Subclipse 등)를 사용하고 있습니다.

우리가 지금 필요한 것은 현재 전체 저장소에 잠겨있는 모든 파일 (및 잠금 된 사람)을 볼 수있는 좋은/쉬운 방법입니다. 나는 거북이와 하위 클립을 조금 찌르지 만 내가 찾고있는 것을 찾지 못했습니다. 우리의 프로젝트에는 여러 레벨의 깊이있는 많은 하위 디렉토리가 있으므로 각 개별 디렉토리를 보는 데 너무 많은 시간이 걸릴 것입니다.

내가 원하는 것은 현재 잠긴 모든 것을 나열하고 누가 잠겨있는 모든 것을 나열하는 단일 보고서입니다. 이러한 유형의 정보를 얻는 가장 좋은 방법은 무엇입니까?

도움이 되었습니까?

해결책

당신이 찾고있는 것은 svnadmin lslocks 명령.

우리는 우리가 전복 저장소에 몇 가지 단어 문서를 보관하기 때문에 직장에서 설정했습니다 ( svn:needs-lock). 나는 매일 Cron 작업을 설정하고, 자물쇠 목록을 확인하고 팀 전체에 7 일 이상의 모든 자물쇠에 대한 보고서를 이메일로 보냅니다. 그렇게하면 누가 느슨해졌고 문서의 잠긴 사본에 오랫동안 앉아 있는지 알 수 있습니다.

다른 팁

이것은 당신이 찾고있는 답이 아닐 수도 있지만, 잠금이 실제로 최상의 개발 관행이 아니라고 관리자에게 설득해야합니다. 이 주제에 대해 쓰여진 많은 것이 있으므로 여기에서 모두 반복하지 않을 것입니다.

잠금 환경에서 강제 체크 아웃 잠금 장치가없는 환경으로 이동하면 처음에는 혼돈으로 이어질 것이라고 생각하지만 실제로는 그렇지 않습니다. SVN은 두 사람이 같은 파일을 작업 할 때 변경 사항을 합병하는 데 능숙하며 충돌로 끝나더라도 고치는 것은 그리 나쁘지 않습니다.

중요한 파일을 체크 아웃하거나 점심을 먹은 사람을 기다리는 것보다 훨씬 낫습니다.

당신과 다른 사람들이 잠금되는 것을 보려면 TortoisesVN → 수정 사항을 확인할 수 있습니다 .... 로컬로 유지 된 잠금 토큰이 즉시 나타납니다. 다른 사람이 보유한 자물쇠를 확인하려면 (자물쇠가 파손되었는지 또는 도난당한 지 확인하려면 체크 리포지토리를 클릭해야합니다.

로컬 체크 아웃에서 자물쇠를 발견 할 수 있습니다 svn status --show-updates 그것은 그것을 넣을 것입니다 O 서버에 잠겨있는 모든 파일 전에

예를 들어

$ svn status --show-updates
     O      279532   LockedFile
?                    UncommittedFile
M           279532   ModifiedFile

보다 SVNBOOK 자세한 사항은

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top